NGINX - настройка под SEO (убираем последние слеши, делаем redirect на страницы с lowercase)

1. redirect на страницы с lowercase

Устанавливаем модуль для компиляции скрипта nginx:
apt-get install nginx-extras
Пишем функцию для преобразования в нижний регистр в файле /etc/nginx/nginx.conf:

http {

    ##
# Perl-function uri_lowercase
##
    
    perl_set $uri_lowercase 'sub {
    my $r = shift;
    my uri=r->uri;
    uri=lc(uri);
    return $uri;
    }';
}

В файле /etc/nginx/sites-available/default настраиваем redirect статусом 301:

location ~ [A-Z] {
        return 301 scheme://http_host$uri_lowercase;
 }

2. Убираем последние слеши

С учетом варианта из п.1 допишем функцию следующим образом:

http {

    ##
# Perl-function uri_lowercase
##
    
    perl_set $uri_lowercase 'sub {
    my $r = shift;
    my uri=r->uri;
    uri=lc(uri);
    uri=1 if(uri= /(.)\//);
    return $uri;
    }';
}
Напишем условия для всех остальных страниц в файле  /etc/nginx/sites-available/default :

server {
...
rewrite ^/(.*)//1 permanent;
..
}

Комментарии

Популярные сообщения