Я пытаюсь использовать mod_rewrite и перенаправить al * ltrafi c на https версию. с www. Я перепробовал много комбинаций и не могу найти окончательного решения. В настоящее время у меня есть:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{HTTP_HOST} ^(www\.)?ppp.cz
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L]
RewriteRule ^$ public/ [L]
RewriteRule (.*) public/$1 [L]
</IfModule>
Это работает, если пользователь вводит URL с www. Si Я пытался улучшить код до (Где условие для ситуации, когда URL-адрес без www.):
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{HTTP_HOST} ^(www\.)?ppp.cz
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L]
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{HTTP_HOST} ^ppp\.cz
RewriteRule (.*) https://www.%{HTTP_HOST}%{REQUEST_URI} [L]
RewriteRule ^$ public/ [L]
RewriteRule (.*) public/$1 [L]
</IfModule>
Но он все еще не делает то, что мне нужно сделать. В настоящее время я безнадежен. (Условие с общественностью / во всех случаях работает.) Может ли кто-нибудь помочь? Спасибо
Чего я хочу добиться, это http://ppp.cz -> https://www.ppp.cz; http://www.ppp.cz -> https://www.ppp.cz