@Dudoroff

Как сделать один редирект на все правила htaccess?

есть набор правил
# Переадресация с добавлением / в конце
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^([^.]+)(?<!/)$ /$1/ [R=301,L]

    # редирект на https://
    RewriteCond %{HTTPS} =off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,QSA]

    # Переадресация с домена с WWW на домен без WWW
    RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
    RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

В случае если нам надо, например, убрать www, добавить https, да еще и / в конце получаем 3 редиректа. Как сделать, чтобы при необходимости правила применялись одно за другим и в итоге был только 1 правильный редирект?

Пробовал так:
# редирект на https://
    RewriteCond %{HTTPS} =off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [E=RCODE:301,QSA]

    # Переадресация с домена с WWW на домен без WWW
    RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
    RewriteRule ^(.*)$ https://%1/$1 [E=RCODE:301]

    # Переадресация с добавлением / в конце
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^([^.]+)(?<!/)$ /$1/ [E=RCODE:301]

    RewriteCond %{ENV:RCODE} !^$
    RewriteRule (.*) /$1 [R=${ENV:RCODE},L]


В итоге в адресной строке домен многократно копируется и редиректит не пойми куда
  • Вопрос задан
  • 32 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы