Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Полный редирект на HTTPS


Recommended Posts

Версия ocStore 2.1.0.2.1
шаблон Revolution

/config.php:

define('HTTP_SERVER', 'http://mysite.ru/');
define('HTTPS_SERVER', 'https://mysite.ru/');

/admin/config.php:

define('HTTP_SERVER', 'http://mysite.ru/admin/');
define('HTTP_CATALOG', 'http://mysite.ru/');
define('HTTPS_SERVER', 'https://mysite.ru/admin/');
define('HTTPS_CATALOG', 'https://mysite.ru/');

В настройках магазина ssl включен.

Редирект срабатывает только при работе с корзиной и аккаунтом, а хотелось бы везде.

Если добавить в .htaccess:

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

...сайт уходит в бесконечный редирект

Уважаемые, подскажите пожалуйста, сделать редирект на https целиком и полностью (т.е. чтобы при вводе адреса "mysite.ru" юзер отправлялся на https://mysite.ru ),
а не только при работе с аккаунтом или корзиной?

 

 

з.ы. ну или укажите на нужную тему, потому что мне поиск не помог.

Змінено користувачем Shaggy
Надіслати
Поділитися на інших сайтах


Решил проблему добавлением в .htaccess следующих строк:

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

Вроде пока все ок. Но если кто в курсе о возможных проблемах в будущем, прошу дать знать :)

Надіслати
Поділитися на інших сайтах


@Matvei

так у меня тоже в бесконечный редирект уходит.

так что пока верну предыдущий вариант. видимо, разница в каких-то настройках хостинга

 

 

дело в "RewriteCond %{HTTPS} off"

 

взял ваш совет и переделал под свой диагноз:

RewriteBase /
# www -> ssl non www
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
# non ssl -> ssl
RewriteCond %{ENV:HTTPS} !on
RewriteCond %{HTTP_HOST} ^(www\.)?(САЙТ\.ru)
RewriteRule ^ https://%2%{REQUEST_URI} [R=301,L]

теперь все редиректит хорошо

Змінено користувачем Shaggy
Надіслати
Поділитися на інших сайтах


у меня прописано так

 

RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTP:X-Forwarded-Proto} =http [OR]
RewriteCond %{HTTP:X-Forwarded-Proto} =""
RewriteCond %{HTTP:X-HTTPS} !1 [OR]
RewriteCond %{HTTPS} !=on
RewriteCond %{REQUEST_URI} !robots\.txt
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
  • +1 1
Надіслати
Поділитися на інших сайтах


RewriteCond %{ENV:HTTPS} !on

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

RewriteEngine On

RewriteCond %{HTTPS} =off

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

RewriteEngine On

RewriteCond %{SERVER_PORT} !^443$

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

RewriteEngine On

RewriteCond %{HTTPS} off

RewriteCond %{HTTP:X-Forwarded-Proto} !https

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

RewriteEngine On

RewriteCond %{HTTPS} off

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

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]

Пробуйте варианты, в зависимости от вашего серверного окружения, какой то должен подойти.
  • +1 1
Надіслати
Поділитися на інших сайтах

  • 1 month later...
  • 2 months later...

У меня тоже были проблемы с редиректом. В итоге помог такой код с переадресацией в т.ч. статических файлов. Может кому пригодится.


 

Заодно с прошу у знающих - все ли тут учтено?



 

#RewriteCond %{SERVER_PORT} !^443$

#RewriteCond %{HTTPS}  off 
#RewriteCond %{HTTP_HOST} ^сайт$ [NC]
#RewriteRule ^(.*)$ https:/сайт/$1 [R=301,L]

#RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
#RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

#RewriteCond %{REQUEST_URI} ^/$
#RewriteRule ^.*$ https://сайт/? [R=301,L]

#RewriteCond %{HTTP_HOST} ^www\. сайт\.ru$ [NC]
#RewriteRule ^(.*)$ http://сайт\.ru/$1 [R=301,L]

#RewriteCond %{HTTP_HOST} ^www. сайт $ [NC]
#RewriteRule ^(.*)$ https:// сайт/$1 [R=301,L]

#RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] 
#RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L]
#RewriteCond %{HTTP:X-Forwarded-Proto} =http [OR]
#RewriteCond %{HTTP:X-Forwarded-Proto} =""
#RewriteCond %{HTTP:X-HTTPS} !1 [OR]
#RewriteCond %{HTTPS} !=on
#RewriteCond %{REQUEST_URI} !robots\.txt
#RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Змінено користувачем tadi
Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.