@m4son

Как настроить редиректы при единой точке входа на Apache?

Подскажите, на сайте прописаны следующие настройки для единой точки входа в файле .htaccess:
RewriteEngine On

RewriteCond %{REQUEST_URI} !public/
RewriteRule (.*) public/$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]


При этом не могу настроить редирект с http на https и с www. на без www
  • Вопрос задан
  • 51 просмотр
Решения вопроса 1
@m4son Автор вопроса
Проблема была не из-за единой точки входа, а из-за настроек сервера.
Вот все варианты, которые я нашел, чтобы сделать перелинковку. Все зависит от настроек сервера. Мне помог 3-й вариант

RewriteEngine on
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteCond %{ENV:HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteCond %{HTTP:X-HTTPS} !1
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

RewriteEngine On
RewriteCond %{HTTP:SSL} !1
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L,R=301]
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы