Приветствую.
Требуется для некой страницы сайта отключить ssl (https), но есть проблемы.
Сайт поддерживается и по http и по https, но если зайти на https, браузер будет всегда редиректить на https, независимо от настроек сервера.
Обычный rewrite не работает, цикл.
Более того, если отключить ssl на сервере, браузер перестанет открывать сайт...
ps\\ nginx
> Приветствую.
> Требуется для некой страницы сайта отключить ssl (https), но есть проблемы.
> Сайт поддерживается и по http и по https, но если зайти на
> https, браузер будет всегда редиректить на https, независимо от настроек сервера.Очень спорный вопрос... Отключить HSTS в nginx:
https://ru.wikipedia.org/wiki/HSTS
> Обычный rewrite не работает, цикл.Думаю если выключить HSTS то цикла не будет.
> Более того, если отключить ssl на сервере, браузер перестанет открывать сайт...
> ps\\ nginxЭто логично.
> Думаю если выключить HSTS то цикла не будет.а с чего вы взяли, что ТС использует HSTS?
>> Думаю если выключить HSTS то цикла не будет.
> а с чего вы взяли, что ТС использует HSTS?Я могу только догадываться о смысле фразы "но если зайти на https, браузер будет всегда редиректить на https, независимо от настроек сервера."
Добрый день. Мне думается что ТС таким образом интерпретирует поведение HSTS.
где конфиг nginx'а? все зависит как вы настроили 80 и 443 в nginx.
> где конфиг nginx'а? все зависит как вы настроили 80 и 443 в
> nginx.Там и 80 и 443, т.е работает и по http и по https
Редирект на https -- реалии современных браузеров.
Отключать в браузере что-то каждому посетителю не выход.
> Там и 80 и 443, т.е работает и по http и по
> https
> Редирект на https -- реалии современных браузеров.
> Отключать в браузере что-то каждому посетителю не выход.ясень пень, конфиг nginx нужен был, чтобы посмотреть какие блоки сервера определены и как идет перенаправление с блока 80 на 443(тупое перенаправление или селективное)
покурите на досуге http://serverfault.com/questions/270339/nginx-force-ssl-on-o...
> Приветствую.
> Требуется для некой страницы сайта отключить ssl (https), но есть проблемы.
> Сайт поддерживается и по http и по https, но если зайти на
> https, браузер будет всегда редиректить на https, независимо от настроек сервера.
> Обычный rewrite не работает, цикл.
> Более того, если отключить ssl на сервере, браузер перестанет открывать сайт...
> ps\\ nginxя поступил следующим образом, подняс свой
> Приветствую.
> Требуется для некой страницы сайта отключить ssl (https), но есть проблемы.
> Сайт поддерживается и по http и по https, но если зайти на
> https, браузер будет всегда редиректить на https, независимо от настроек сервера.
> Обычный rewrite не работает, цикл.
> Более того, если отключить ssl на сервере, браузер перестанет открывать сайт...
> ps\\ nginxсорри за то что выше
я поступил следующим образом, поднял свой httpd proxy, виртуальный домен локульный и все запросы редиректит удаленно на https
> Там и 80 и 443, т.е работает и по http и по https
> Редирект на https -- реалии современных браузеров.ты конфиг то покажи, чтобы мы не гадали
> сорри за то что выше
> я поступил следующим образом, поднял свой httpd proxy, виртуальный домен локульный и
> все запросы редиректит удаленно на https:) нихт андерстейн solution энзе question
server_name xxx.ru xxx.ru www.xxx.ru;
listen xx.xx.xx.17;
listen 443 ssl;
ssl_certificate /etc/nginx/ssl/xxx_ru.crt;
ssl_certificate_key /etc/nginx/ssl/xxx.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
testcookie on;
if ($http_user_agent ~ "^$") {
return 403;
}
if ($http_user_agent ~* "WordPress") {
return 403;
}
location / {
limit_req zone=lphp burst=10;
proxy_pass http://xx.xx.xxx.xxx:80;
proxy_read_timeout 60;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
#proxy_set_header realip $remote_addr;
}Если делать отдельный location или rewrite для нужной линки, браузер уходит в цикл.
Если на браузере при этом установить нечто вроде force tsl и выключить принудительный редирект на https, то все ок. и по http и по https все ходит. Но каждому посетителю браузер так настраивать не будешь.
> Сайт поддерживается и по http и по httpsА где http версия?
>> Сайт поддерживается и по http и по https
> А где http версия?у него где-то в облаках :) и все тут же listen xx.xx.xx.17;
как писал ранее где нужно было покурить, вам нужно проверять по какому протоколу пришел к вам пользователь на ресурс и там уже решать, переводить/отключать https:location /user {
if ($scheme = 'https') {
rewrite ^ http://$http_host$request_uri? permanent;
}
}