RewriteCond %{QUERY_STRING} (?:^|&)action=([^&]*)
RewriteRule ^(page)$ /$1/%1? [R=301,L]
Когда я делаю 301 редиректrewrite ^/avtomobili/$ https://site.com/news-auto/ permanent;
site.com/avtomobili всё равно ведёт на site.com/avtomobili-s-probegom.
^/avtomobili/$
, а в запросе слеш не добавляете.^/avtomobili$
или ^/avtomobili/?$
server {
listen 80;
server_name site.ru www.site.ru;
root /var/www;
location = /robots.txt { }
location / {
return https://site.ru$request_uri;
}
}
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .* index.php [L]
server {
listen 80;
server_name my.domain.org;
error_page 502 /error_page/error_1.html;
location /error_page/ {
root /var/www;
}
location / {
proxy_pass http://my.domain.org:7990;
gzip off;
proxy_buffers 8 32k;
proxy_buffer_size 64k;
proxy_request_buffering off;
proxy_read_timeout 300;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
location /robots.txt { proxy_pass http://media-static/$host/static; }
proxy_pass http://media-static/$host/static$uri;
proxy_pass http://media-static/$host/static/robots.txt;
DirectoryIndex index.html
AddDefaultCharset utf-8
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.site\.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]
RewriteCond %{THE_REQUEST} "^\S+ ([^ ?]+)\.html"
RewriteRule ^ %1 [R=301,L]
RewriteCond %{REQUEST_URI} !\.[a-zA-Z0-9]{2,4}
RewriteCond %{REQUEST_URI} !/$
RewriteRule ^(.*)$ $1.html [L]
</IfModule>
RewriteCond %{HTTP_HOST} !=www.site.ru
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]
if
там лишняя. Достаточно одного rewrite
rewrite ^/reviews/$ https://www.mysite.ru/o-kompanii/otzyvy/? permanent;