есть набор правил
# Переадресация с добавлением / в конце
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]
В итоге в адресной строке домен многократно копируется и редиректит не пойми куда