Может ли редирект с http на https в файле .htaccess вызывать ошибку ERR_TOO_MANY_REDIRECTS в nginx?

12 3
Dmitriy_2014
На сайте с 01.07.2014
Offline
276
510

Всем привет!

Может ли прописанный в файле .htaccess редирект 301 перенаправляющий с http на https протокол вызывать ошибку в браузере - ERR_TOO_MANY_REDIRECTS при использовании NGINX. И как я понимаю это не ошибка работы со стороны серверов, это ошибка генерируется браузером из-за бесконечного цикла перенаправлений, видимо нужно убирать редирект из апачи и оставлять только в нжинкс и не делать много редиректов.

Заранее всем спасибо за ответы!


lealhost
На сайте с 07.06.2014
Offline
136
#1
Может. Смотря как прописан редирект. В правило редиректа закладывается условие проверки текущего протокола. Если нет условия или условие отрабатывает некорректно, будет вечный цикл.
L
На сайте с 10.02.2015
Offline
221
#2
Скорее всего nginx ходит к апачу по хттп.
alaev
На сайте с 18.11.2010
Offline
694
#3
Обычно хостер сам предлагает правильные варианты написания .htaccess .
Или у вас ещё где-то ошибка в файле.
Лучше код файла сюда киньте.

Создание и продвижение сайтов - https://alaev.net , аудиты сайтов, контекстная реклама
LEOnidUKG
На сайте с 25.11.2006
Offline
1723
#4
у вас же vds! И вы писали у вас ISP панель, там в ней ставится редирект, зачем вам   .htaccess?
✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/
Dmitriy_2014
На сайте с 01.07.2014
Offline
276
#5
lealhost #:
Может. Смотря как прописан редирект. В правило редиректа закладывается условие проверки текущего протокола. Если нет условия или условие отрабатывает некорректно, будет вечный цикл.
Редирект в три строки, с условием или нет сложно мне сказать:

RewriteEngine On

RewriteCond %{SERVER_PORT} !^443$

RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

LEOnidUKG #:
у вас же vds! И вы писали у вас ISP панель, там в ней ставится редирект, зачем вам   .htaccess?
Грубо говоря у хостера есть справка, в ней было рекомендовано внести изменения в .htaccess причем несколько вариантов редиректа из которых только один и заработал.
lealhost
На сайте с 07.06.2014
Offline
136
#6
Dmitriy_2014 #:
Редирект в три строки, с условием или нет сложно мне сказать:

RewriteEngine On

RewriteCond %{SERVER_PORT} !^443$

RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Грубо говоря у хостера есть справка, в ней было рекомендовано внести изменения в .htaccess причем несколько вариантов редиректа из которых только один и заработал.

RewriteCond - это условие.

Условие верное, но в зависимости от хостинга, может и не работать.

Вызовите phpinfo(), найдите $_SERVER['SERVER_PORT'], чему равно значение элемента этого массива, когда переходите по HTTPS? (заранее нужно убрать этот .htaccess и вручную забить адрес https:// )

Dmitriy_2014
На сайте с 01.07.2014
Offline
276
#7
lealhost #:

RewriteCond - это условие.

Условие верное, но в зависимости от хостинга, может и не работать.

Вызовите phpinfo(), найдите $_SERVER['SERVER_PORT'], чему равно значение элемента этого массива, когда переходите по HTTPS? (заранее нужно убрать этот .htaccess и вручную забить адрес https:// )

Спасибо за подсказку, посмотрю…
Dmitriy_2014
На сайте с 01.07.2014
Offline
276
#8
Извиняюсь за возможно дурацкий вопрос, но почему при выключении SSLEngine off и перезагрузки сервера, Apache продолжает работать и занимать 443 порт?
LEOnidUKG
На сайте с 25.11.2006
Offline
1723
#9
Dmitriy_2014 #:
Извиняюсь за возможно дурацкий вопрос, но почему при выключении SSLEngine off и перезагрузки сервера, Apache продолжает работать и занимать 443 порт?

потому, что listen 443

Dmitriy_2014
На сайте с 01.07.2014
Offline
276
#10
LEOnidUKG #:
потому, что listen 443
Так я его могу выключить или только переназначить на другой порт? SSLEngine off не выключает поддержку SSL?
12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий