Некорректная переадресация с http на https (после установки SSL-сертификатов)

Главные вкладки

Аватар пользователя rada_lyuboy_help rada_lyuboy_help 5 января 2017 в 14:47

Здравствуйте, гуру-Друпала. Ломаю голову уже больше двух недель. Буду рада любому совету.

1. Заказала, купила и установили мне SSL сертификаты (у хостера).

2. Вычитала, что нужно сделать редирект с http на https. Вот тут и возникли проблемы.

Что я пробовала:
1. В setting прописала $base_url = 'https://сайт'; (если честно никаких изменений не заметила), при добавлении $conf['https'] = TRUE; так же не заметила никаких изменений.
2. Пробовала прописывать вот это в web.config – не помогло.

3. Настраивала всевозможные редиректы, которые нашла в интернете, итог:
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

Дает редирект с http://сайт на https://сайт. С внутренних страниц переадресация так же идет на https://сайт, т.е. при нажатии на любой из пунктов меню переадресация идет на главную.

Это единственный из предложенных вариантов, при установке которого хоть что-то происходит. Остальные варианты дают циклическую ошибку:
RewriteCond %{HTTPS} =on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
RewriteCond %{ENV:HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

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

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

RewriteBase /
RewriteCond %{HTTP:SSL} !=1 [NC]
RewriteRule ^(.*) https://вашсайт.net/$1 [L,R=301]

4. Есть еще один сайт, в котором вот этот код
RewriteCond %{HTTPS} =on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

Дает переадресацию всех страниц, кроме главное, т.е. с http://сайт/страница1 на https://сайт/страница1. Но зато редирект с http://сайт на https://сайт не срабатывает.

Вопрос: Есть идеи как сделать так, чтобы сайт работал корректно по протоколу https:// ?

Комментарии

Аватар пользователя BatKor BatKor 5 января 2017 в 15:17

А хтаксес никто не настраивал раньше?, хтаксес может быть в любых подпапках сайта на сервере, инногда проще редикт настроить на уровне сервера(энджингс или апач или ... ), вообще
https://www.reg.ru/support/hosting-i-servery/sajty-i-domeny/kak-dobavit-...
должно быть достаточно

Аватар пользователя rada_lyuboy_help rada_lyuboy_help 5 января 2017 в 15:32

Сейчас перепроверю, конечно, наличие других файлов, но редирект с www на без срабатывал без проблем.
Пробовала Вашу ссылку. Происходит следующее: сперва редирект срабатывал только на главной. Потом 100500 раз обновила и опача - и другие страницы сайта стали доступные. Радовалась, ликовала. Сегодня решила перепроверить. Итог: редирект только на главной осуществляется.

Аватар пользователя BatKor BatKor 5 января 2017 в 15:37

Если у вас обычный хостниг без vds и vps, "попросите" поддержку хостинга настроить редикт на уровне nginx если конечно у вас nginx

Аватар пользователя rada_lyuboy_help rada_lyuboy_help 5 января 2017 в 16:02

"Просила", мне посоветовали обратиться к профессиональным разработчикам)) Хостинг обычный, мне еще выделяли дополнительный IP. nginx - есть, версия 0.8.54

Аватар пользователя rada_lyuboy_help rada_lyuboy_help 6 января 2017 в 8:49

Тогда у меня возникает вопрос: почему тогда редирект для главной срабатывает? В моем понимании: если я что-то написала и есть хоть какая-то реакция, значит htaccess читается. Или это еще не факт? Сейчас буду смотреть что там в Apache, спасибо! Отпишусь, если решится

Аватар пользователя Studio VIZA Studio VIZA 5 января 2017 в 15:39

И то верно, дали бы больше инфы, какой сервер, какая панель и прочее, вам бы ответили может быть весьма точечно и точно.

Аватар пользователя BatKor BatKor 5 января 2017 в 16:06

Скажите пожалуйста, что это за хостинг?
сам я nginx не настраивал ни разу, так как vds на плечах знакомого. если ни кто вам не ответит то я вам отпишусь

Аватар пользователя rada_lyuboy_help rada_lyuboy_help 5 января 2017 в 16:17

Так, возможно, я в чем-то ошибаюсь. Напишу, что знаю:
1. Сайт находится на доменной зоне .by
2. Хостинг предоставляет - active(точка)by
3. В документах - Виртуальныйхостинг Эксперт (Linux, вБеларуси)
4. ISP manager - панель хостинга
5. Насчет nginx ответ дала на основе сайта bertal(точка)ru. Там вот такая строчка - HTTP/1.1 200 OK, Server: nginx/0.8.54 и т.д.

Мне бы хотя бы знать, в какую сторону копать. Я уже подумала. что неправильно настроили сертификаты, но тогда бы сайт, вообще, не был доступен по https

Аватар пользователя Studio VIZA Studio VIZA 5 января 2017 в 16:09

rada_lyu boy_help wrote:

мне посоветовали обратиться к профессиональным разработчикам

Создайте тему в разделе поиска специалистов, пока дров не наломали, здесь много профи, работающих в этом направлении.

Ещё один ник, не позволяющий цитирование...

Аватар пользователя rada_lyuboy_help rada_lyuboy_help 5 января 2017 в 16:23

Есть одно Но: мне нужно найти ответ самой или с чей-то помощью, мое начальство не планирует на эту задачу тратить средства. А, если даже, что-то пойдет не так, всегда можно вернуться к тому месту, где стартанула Smile

Аватар пользователя rada_lyuboy_help rada_lyuboy_help 6 января 2017 в 12:14

Появилось новое наблюдение. Когда я авторизована, что срабатывает протокол https на всех страницах даже без кода в .htaccess. По сути получается. что он есть, работает, но только чрез админку.

Аватар пользователя rada_lyuboy_help rada_lyuboy_help 10 января 2017 в 9:48

Решила! Оказалось все гораздо проще! В Drupal 7 - там уже все есть, нужно лишь в главном файле темы раскомментировать. И не нужно никакого редиректа в .htacceess и никаких модулей.
А Вам, BatKor, спасибо за поддержку! Успехов Вам!