Welcome! Log In Create A New Profile

Advanced

nginx правильный редирект на /

September 30, 2014 07:54AM
Поскольук RweriteCond не может проверить на 404, до редиректа можно только в nginx правило нужно переписать под nginx

Требуется сделать редирект на слеш но хитрый.
RewriteCond ЕСЛИ НЕ 400
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [R=301]


И того.
редирект должен сработать если
1. страница не отдает 400 ( посколкьу иначе отдаст 301+400)
2. если урл НЕ заканчивается .html|php|txt и тд посколкуь слеш после расширения глупо.
3 если урл НЕ содержит слеш в конце ( тобишь уже не требуется)
То седлать редирект со всех урлов на урлы со слешем вконце.



index.html - не редиректит поскольку заканчивается расширение м
index.php/aaa/aaa/ - не редиректит посколку слеш вконце
index.php/?=ID2333s правило не затрагивает гет запросы
404 правило неработает посколкьу 404 в редиректе не нуждается.
Subject Author Posted

nginx правильный редирект на /

shambler81 September 30, 2014 07:54AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 105
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready