Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » .htaccess и редирект с http на ту же страницу с https. Но у уже есть один RewriteRule

Ответить
Настройки темы
.htaccess и редирект с http на ту же страницу с https. Но у уже есть один RewriteRule

Пользователь


Сообщения: 51
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день
Встала задача сделать редирект с http страницы на такую же страницу с https
Проблема в том, что у меня уже есть один RewriteRule в .htaccess
и не понимаю как сделать что бы они оба отрабатывали

вот код
Код: Выделить весь код
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP:X-HTTPS} !1
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301]
RewriteRule ^/?([^/]+)/([^/]+)/(\d+)$ /index.php?param=$3 [L]
Выдает ошибку ERR_TOO_MANY_REDIRECTS

Отправлено: 10:07, 01-07-2023

 

Deadooshka


Сообщения: 2482
Благодарности: 671

Профиль | Отправить PM | Цитировать


Цитата Svetik2000:
%{HTTP:X-HTTPS} !1 »
%{HTTPS} "off"

Отправлено: 10:51, 01-07-2023 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 51
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Sham:
%{HTTPS} "off" »
добавить после той строчки или заменить ее?

Отправлено: 11:22, 01-07-2023 | #3


Deadooshka


Сообщения: 2482
Благодарности: 671

Профиль | Отправить PM | Цитировать


На самом деле зависит от конфигурации. Если apache получает проксируемые запросы без шифрования (от nginx например), то эти редиректы должны быть настроены в конфиге nginx. Либо если действительно должен передаваться X-HTTPS от nginx, то надо проверять его наличие в http-заголовках у apache.

Отправлено: 12:33, 01-07-2023 | #4


Пользователь


Сообщения: 51
Благодарности: 0

Профиль | Отправить PM | Цитировать


nginx не стоит
заменила строчку на вашу.
при обращение по http редиректа не произошло
по https выдало 404 ошибку

Отправлено: 14:32, 01-07-2023 | #5


Пользователь


Сообщения: 51
Благодарности: 0

Профиль | Отправить PM | Цитировать


Ну или с помощью php кода как можно это сделать?
что бы со страницы http:/site.ru/bla-bla-bla/be-be-be/pageNNN.php
был редирект на https:/site.ru/bla-bla-bla/be-be-be/pageNNN.php

Отправлено: 20:31, 06-07-2023 | #6


Deadooshka


Сообщения: 2482
Благодарности: 671

Профиль | Отправить PM | Цитировать


Сделайте что-ли для какого-нибудь file.php с содержимым var_dump($_GET); правило RewriteRule file.php file.php?https=%{HTTPS}&x=%{HTTP:X-HTTPS} [END]
Запускайте этот файл с https и без. Выводы в студию. То есть содержимое этих переменных при запросе.

Отправлено: 21:13, 06-07-2023 | #7


Пользователь


Сообщения: 51
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день.

с http
array(2) { ["https"]=> string(3) "off" ["x"]=> string(0) "" }

с https
array(2) { ["https"]=> string(2) "on" ["x"]=> string(0) "" }

содержимое .htaccess выглядит сейчас так:

Код: Выделить весь код
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP:X-HTTPS} !1
RewriteRule ^/?([^/]+)/([^/]+)/(\d+)$ /index.php?param=$3 [L]
RewriteRule tmp.php tmp.php?https=%{HTTPS}&x=%{HTTP:X-HTTPS} [END]
при запросе с http редиректа на https не произошло

Последний раз редактировалось Svetik2000, 07-07-2023 в 11:43.


Отправлено: 11:32, 07-07-2023 | #8


Deadooshka


Сообщения: 2482
Благодарности: 671

Профиль | Отправить PM | Цитировать


на выбор
Код: Выделить весь код
RewriteCond %{HTTPS} =off
RewriteCond %{THE_REQUEST} "\s/(\S*)\s"
RewriteRule ^ https://%{HTTP_HOST}/%1 [R,L]
или
Код: Выделить весь код
RewriteCond %{HTTPS} =off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
Цитата Svetik2000:
RewriteCond %{HTTP:X-HTTPS} !1 »
это лишняя строка
редирект лучше размещать выше всех отдельных RewriteRule-ов, иначе исходный REQUEST_URI может измениться.
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:38, 07-07-2023 | #9


Пользователь


Сообщения: 51
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо
Вроде бы помогло.
Буду мониторить

Отправлено: 08:07, 08-07-2023 | #10



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » .htaccess и редирект с http на ту же страницу с https. Но у уже есть один RewriteRule

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
редирект в .htaccess с https на http с параметрами Svetik2000 Вебмастеру 28 18-07-2022 17:08
Разный редирект http и https kot488 Вебмастеру 2 05-12-2017 13:19
Составление правила RewriteRule (.htaccess) ferona Вебмастеру 0 01-02-2012 10:09
Малеха не в ту ветку но все же... artem_ Microsoft Windows 2000/XP 0 02-06-2008 23:23
[htaccess] redirect https to http strejiok Вебмастеру 9 25-11-2006 13:50




 
Переход