Вы когда-нибудь развертывали новый веб-сайт или приложение на некоторых платформах SaaS и пытались указать на него свой домен — только чтобы обнаружить, что вас все время перенаправляют?
Если вы используете платформу, такую как vercel, deno, и пытаетесь указать на нее пользовательский домен через DNS Cloudflare — вы заметите, что вы получите ошибку «перенаправляли вас слишком много раз» при доступе к этому домену через веб-браузер.
Как это исправить
Короче говоря, все, что вам нужно сделать, это зайти в Cloudflare и нажать на свой домен. Затем щелкните вкладку SSL/TLS и, наконец, щелкните Полный или Полный (строгий) режим для режима шифрования SSL/TLS. Это автоматически отключит предварительную загрузку HSTS и поможет решить проблему с перенаправлением. После этого вы сможете без проблем получить доступ к своему сайту.
Обратите внимание, что соединение между Cloudflare и вашим веб-сервером является безопасным и использует доверенный ЦС или исходный ЦС Cloudflare на этом сервере. Если ваш веб-сервер использует самозаверяющий сертификат, вам следует использовать полный режим.
Что случилось?
Пользователи подключаются к Cloudflare через свои браузеры, а затем Cloudflare подключается к исходному веб-серверу. Следовательно, для этих подключений может быть два способа, а именно HTTP и HTTPS, что в сумме дает 4 комбинации. Это именно первые 3 режима шифрования Cloudflare SSL/TLS.
Большую часть времени HTTPS принудительно подключается к браузеру, когда он впервые пытается подключиться к Cloudflare (вашему DNS-серверу имен), потому что использование HTTPS в браузере — непреодолимая тенденция, и большинство посетителей знают об угрозах безопасности HTTP. Тогда единственное, что вы можете изменить, — это соединение между Cloudflare и вашим веб-сервером.
Если вы используете некоторые платформы развертывания, такие как vercel и deno, они уже поддерживают HTTP Strict Transport Security (HSTS), что в основном означает, что все запросы, отправленные на эти домены, будут автоматически перенаправляться на HTTPS через проверенные клиентом сертификаты.
Итак, когда вы настроили соединение Cloudflare-веб-сервер в «Незащищенный» или «Гибкий» режим, вот что произошло: браузер подключается к Cloudflare, это нормально, затем Cloudflare подключается к веб-серверу, с которого вы настроили это соединение как небезопасное. безопасный (с использованием HTTP). и поскольку ваш веб-сервер использует HSTS, запрос перенаправляется на HTTPS и отправляется обратно в Cloudflare. Этот HTTPS-запрос снова обрабатывается Cloudflare, отправляя HTTP-запрос на сервер, и сервер перенаправляет его на HTTPS, а Cloudflare снова его обрабатывает. Это бесконечный цикл, вызвавший ошибку. Чтобы это исправить, вы должны настроить соединение Cloudflare-webserver на «Полный» режим или выше (HTTPS).
Что еще?
Аналогичные проблемы могут возникнуть, если вы неправильно настроите свои домены на режим HTTPS, но подключение вашего сервера не к HTTPS (из-за того, что поставщик услуг не разрешает это или не предоставляет). В таком случае вам следует использовать «Гибкий» режим вместо зашифрованного варианта. Это тот случай, если вы размещаете на визуальной машине и можете использовать Cloudflare CA и поддерживать протокол HTTPS, ничего не делая.
Если вам это хоть как-то помогло, не забудьте нажать кнопку Нравится! Приятно видеть, что вы узнали что-то из этого поста. ❤️
Ссылка
ERR_TOO_MANY_REDIRECTS · Документы Cloudflare SSL/TLS
Шифрование — Документы Vercel