Re: Редирект директории на урл со слешем в конце
Maxim Dounin
mdounin на mdounin.ru
Пн Июл 11 14:34:35 UTC 2011
Hello!
On Mon, Jul 11, 2011 at 05:40:29PM +0400, Глазачев Владимир wrote:
> Добрвый день всем.
>
> Возник вопрос в целях SEO, как лучше организовать редирект с
> запроса без слеша на конце, на запрос со слешом на конце (ессно
> это касается запросов идущих на директорию) например:
>
> www.domain.com/shop -> www.domain.com/shop/
>
> И это, естественно не должно срабатывать, на урлы такого вида:
> www.domain.com , www.domain.com/news/news.html или
> www.domain.com/file.php?get_parametrs
Для статики nginx так поступает автоматически, т.е. если он
обнаруживает запрос к каталогу без "/" в конце - будет возвращён
редирект на тот же адрес, но с добавлением "/".
Если у вас url'ы обрабатываются бекендом - это либо надо делать
бекендом же, либо тщательно выписывать nginx'у правила что и куда
редиректить (иначе откуда он узнает, что "new.shop" редиректить
надо, а "new.shtml" - не надо?).
Наиболее простой (и безопасный) способ "тщательного выписывания
правил" - сделать location'ы под нужные url'ы вида
location /shop/ {
fastcgi_pass/proxy_pass/...
}
В этом случае запрос к "/shop" будет трактоваться как запрос к
каталогу, и nginx автоматически сделает редирект на "/shop/".
Maxim Dounin
Подробная информация о списке рассылки nginx-ru