Cloudflare и nginx: слишком много перенаправлений
Я пытаюсь настроить NGINX и cloudflare. Я читал об этом в Google, но ничего не решило мою проблему. Мой cloudflare активен в данный момент. Я удалил все правила страницы в cloudflare, но раньше domain.com и www.domain.com использовать HTTPS. Я думал, что это может вызвать проблему, поэтому я удалил ее. Вот мой default
nginx файл, с целью предоставления доступа только по доменному имени и запретить доступ по значению IP веб-сайта:
server{
#REDIRECT HTTP TO HTTPS
listen 80 default;
listen [::]:80 default ipv6only=on; ## listen for ipv6
rewrite ^ https://$host$request_uri? permanent;
}
server{
#REDIRECT IP HTTPS TO DOMAIN HTTPS
listen 443;
server_name numeric_ip;
rewrite ^ https://www.domain.com;
}
server{
#REDIRECT IP HTTP TO DOMAIN HTTPS
listen 80;
server_name numeric_ip;
rewrite ^ https://www.domain.com;
}
server {
listen 443 ssl;
server_name www.domain.com domain.com;
#rewrite ^ https://$host$request_uri? permanent;
keepalive_timeout 70;
ssl_certificate /ssl/is/working.crt;
ssl_certificate_key /ssl/is/working.key;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:50m;
#ssl_dhparam /path/to/dhparam.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM$
ssl_prefer_server_ciphers on;
add_header Strict-Transport-Security max-age=15768000;
(...) more ssl configs
что может быть выключен? При необходимости я предоставлю информацию mroe...
3 ответов
после пробы выяснилось, что это связано только с Cloudflare. Потому что у меня не было проблем с перенаправлением перед переездом в Coudflare.
в моем случае было просто исправить такой. Выберите [Crypto] и выберите полный (строгий), как на изображении.
действительно, Вы можете попробовать это сначала перед любыми другими действиями.
эти вопросы с переадресацией побега приходят все время!
обычно проблема заключается в том, что 301 Moved Permanently
ответы часто кэшируются в браузерах "навсегда", и часто нет никакого способа CtrlR, ни Ctrl ShiftR из него, за исключением очистки всего кэша. (Это одна из причин, почему я часто предпочитаю 302 Found
/ 302 Moved Temporarily
вместо этого, особенно на этапе разработки, потому что 302
по умолчанию ответы вообще не кэшируются.)
кроме того, если у вас был HSTS в прошлом, и он был успешно извлечен и тихо установлен браузером под капотом, и никогда не был явно очищен или истек еще, то браузер никогда не будет делать никаких последующих запросов над http://
до тех пор, пока политика не будет очищена - все запросы всегда будут закончены https://
.
Что касается ввода CloudFlare в микс, разве это не облегчает необходимость иметь так много различных определений серверов и перенаправлений в первую очередь, так как ваш IP-адрес должен быть скрыт? Я не уверен, что это хорошо, чтобы предположительно скрыть свой IP-адрес за CloudFlare, но открыто раскрыть доменное имя, которое он служит для тех, кто делает глобальное сканирование интернета.
поскольку вы уже пробежали все "режимы SSL", предлагаемые CloudFlare, я бы предложил чтобы изменить все ваши 301 permanent
перенаправляет на 302 временное redirect
s (Если не удалить все это полностью в первую очередь), очистите кэш браузера, а затем попробуйте снова обойти параметры ssl. :-)
перейдите в раздел Правила страницы и проверьте, есть ли у вас правило "всегда перенаправлять на https". Он был у меня по умолчанию.