Настройки редиректов на слэш

15 сентября 2016, 22:38

Часто сталкивался с необходимостью автоматической расстановки слэшей на окончание url'ов, чтобы получалось так заходим на страницу https://modx.one/topics, а нас редиректит на страницу https://modx.one/topics/ где в конце подставляется слэш, что в дальнейшем способствует лучшему ранжированию в поисковых машинах и исключает тем самым дубли страниц. Для начало в настройках MODX Содержимое->Типы содержимого в расширении файла HTML удаляем .html и ставим слэш / Далее убедимся что чпу у нас в системе настроен и затем настраиваем сервер.

Настройки под nginx:

location ~ .+/$ {
rewrite (.+)$ $1/ permanent;
}

или так

rewrite ^(.+[^/])$ $1/ permanent;

в том случае если нам слэш на конце наоборот надо убирать делаем так:

location ~ .+/$ {
rewrite (.+)/$ $1 permanent;
}

Настройки для Apache:

  1. Выставляем канонический урл

  2. Или добавляем в .htaccess код

# Rewrite domain.com -> domain.com/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !\..{1,10}$
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://site.ru/$1/ [L,R=301]

Работает гарантировано.

SEQUEL.ONE
2    2781    0
+1

Комментарии ()

    Вы должны авторизоваться, чтобы оставлять комментарии.