Друзья! Пламенно приветствую вас в очередной нашей статье, посвященной ошибке браузеров. Простая ошибка для пользователей, но порой запутанная для программистов всех уровней:
ERR_TOO_MANY_REDIRECTS
Опознали ошибку у себя? Примерно так же? Не знаете, как исправить? Тогда предлагаю сразу же приступить к разбору. У этой ошибки есть два разных сценария обнаружения:
- Она может встретиться обычному пользователю интернета, который просто хотел открыть какой-то сайт. Таких людей очень много – предлагаю начать именно с них.
- Разрешение этой ошибки сейчас ищет другой программист или владелец сайта после каких-то действий с кодом, настройками сервера, SSL, CDN, WordPress или правилами переадресации. Коллег я тоже не забуду, но для них раздел будет чуть ниже основного блока – не поленитесь пролистать до конца.
В любом случае – нашли какое-то свое интересное решение или остались вопросы? У нас всегда открыты комментарии. Пишем, не стесняемся, помогаем людям.
Общий раздел – Источники проблемы
Решил вставить здесь этот раздел, так как источники появления ошибки на экране по сути одни и те же для всех. Дословный перевод ошибки на русский язык:
ERR_TOO_MANY_REDIRECTS
ОШИБКА_СЛИШКОМ_МНОГО_РЕДИРЕКТОВ
Программисты уже побежали исправлять с полным пониманием, а вот простых пользователей может озадачить слово «редирект». Редирект – с английского переадресация. Теперь немного на пальцах про переадресацию:
- Вы посещаете разные сайты.
- Иногда неверно вводите адреса.
- Чтобы сделать вашу жизнь лучше, сайты переадресовывают вас на «правильные», по их мнению, свои страницы.
- Порой с такими переадресациями возникают ошибки.
Главная причина – браузер попал в бесконечную переадресацию. Самый частый пример – вы заходите на главную страницу, а главная бесконечно перенаправляет сама на себя. Еще один понятный пример: сайт отправляет вас с http на https, а потом другая настройка отправляет обратно с https на http. Эти перенаправления по большей части должны правильно разрешаться именно сервером, но если их становится слишком много, ваш браузер останавливает загрузку и показывает ошибку.
Немного стало понятно? Где-то на сайте случилась ошибка, а вы ее поймали. Браузер сам выходит из этого бесконечного цикла, чтобы не крутить загрузку бесконечно и не перегружать ваш компьютер. В нормальной ситуации один-два редиректа – обычное дело. Например, вы вводите адрес без «www», а сайт отправляет вас на версию с «www» или наоборот. Проблема начинается тогда, когда правила спорят друг с другом и гоняют браузер по кругу.
Для обычного пользователя важно понять главное: ERR_TOO_MANY_REDIRECTS не означает, что у вас обязательно сломался интернет. Если остальные сайты открываются, Wi-Fi работает, мессенджеры загружаются, а ошибка появляется только на одном сайте, чаще всего виноват сам сайт. Но куки, кэш, VPN, расширения и старые данные входа в браузере тоже иногда запускают такой круг, поэтому несколько простых проверок все-таки стоит сделать.
Другие браузеры тоже разрешают эту проблему, но показывают ее по-своему:
Google Chrome, Яндекс.Браузер, Opera, Microsoft Edge: ERR_TOO_MANY_REDIRECTS или сообщение о том, что страница выполнила слишком много переадресаций.
Mozilla Firefox: The page isn’t redirecting properly. Firefox has detected that the server is redirecting the request for this address in a way that will never complete.
Safari: Too many redirects occurred trying to open the page.
Я пользователь – как решить проблему?
Этот раздел по устранению посвящается самым простым пользователям, которым нужно здесь и сейчас открыть какой-то сайт. Самое главное:
Как правило, это серверная ошибка. То есть вы ничего не можете с ней сделать, кроме как подождать исправления ее программистами того самого сайта, который вы хотели бы открыть.
То есть у вас обычно все работает правильно, и браузеры грамотно разрешают ошибки сервера в таком виде. Но если ошибка повторяется и через один-два дня, можно на опережение попробовать следующие быстрые решения:
- Пробуем открыть сайт через другой браузер. Использовали Google Chrome? Тогда открываем Firefox, Opera, Яндекс.Браузер или стандартный Edge. Если и в них проблема сохраняется – значит, с большой вероятностью проблема на сервере. Если же они почему-то открывают сайт – значит, дело в самом браузере. Обычно это кэш со старого редиректа, сохраненные куки или какое-то расширение.
- Открываем сайт в режиме инкогнито или приватном окне. В Chrome и Edge обычно помогает сочетание Ctrl + Shift + N, в Firefox – Ctrl + Shift + P. Если в приватном окне сайт открылся, значит, проблема почти наверняка в куках, расширениях или сохраненной сессии в основном профиле браузера. Подробнее про сам режим можете почитать в нашей статье про инкогнито в Google Chrome.
- Чистим кэш браузера и куки. Лучше сначала чистить данные не всего браузера, а конкретного сайта, чтобы не вылететь из аккаунтов везде сразу. Но если не знаете, как это сделать, ищем в настройках раздел похожий на «Удалить историю», а это наша статья на примере Opera.
- Стоит посмотреть в сторону установленных расширений браузера. Ставили какие-нибудь VPN, прокси, блокировщики рекламы, антивирусные дополнения и прочую дрянь в браузер? Даже случайно – только честно и для себя, меня обманывать не нужно. На всякий случай идем в «Настройки» – «Расширения» или «Дополнительные инструменты» – «Расширения» на примере Google Chrome и смотрим на список дополнений. Нашли что-то подозрительное? Пробуем отключить. Если не уверены в оценке «подозрительности», отключите все расширения и перезапустите браузер. Исчезли редиректы?
- Отключите VPN и прокси. Иногда сайт по-разному открывается для разных стран, регионов, корпоративных сетей или VPN-серверов. Получается странная картина: без VPN сайт ведет на одну версию, с VPN – на другую, а в итоге браузер ходит по кругу. Если после отключения VPN все заработало, можете дополнительно посмотреть материал про ошибку «Не удается получить доступ к сайту», там похожая логика проверки сети и браузера.
- Проверьте сайт с другого устройства или через другую сеть. Например, на компьютере ошибка есть – откройте тот же адрес с телефона через мобильный интернет. Если на телефоне через мобильную сеть сайт открылся, а дома через Wi-Fi нет, возможно, дело в DNS, роутере, провайдере или локальном кэше. Если сайт не открывается нигде, ждать владельца сайта придется с еще большей вероятностью.
- Если вы точно уверены, что виноват браузер, можно попробовать сделать ему «сброс на заводские настройки». Лично такое проворачивал один раз, но не для этой ошибки. Если глюк был именно в браузере, а не в чужом сайте, кэше или расширении – поможет. На примере Chrome: «Настройки» – «Сброс настроек» – «Восстановление настроек по умолчанию».
Если ошибка появляется только после входа в личный кабинет, отдельное внимание уделите кукам. Например, главная страница сайта открывается, но как только вы нажимаете «Войти», браузер начинает бегать между страницей авторизации и личным кабинетом. В такой ситуации часто помогает выход из аккаунта, очистка куки именно этого домена и повторный вход. Если сайт банковский, государственный или корпоративный, лучше не включать подозрительные расширения, VPN и «ускорители интернета» – они могут ломать авторизацию.
Не спешите полностью удалять все данные браузера, если у вас там важные пароли, рабочие вкладки и авторизации. Сначала попробуйте открыть сайт в другом браузере, затем в режиме инкогнито, потом очистите куки только проблемного сайта. Полная очистка всего браузера – это уже более грубый вариант, когда быстрые проверки не помогли.
Есть еще редкие случаи вроде неверной даты и времени на компьютере, кривого DNS или зависшего кэша DNS. Для ERR_TOO_MANY_REDIRECTS это не главный сценарий, но если вместе с этой ошибкой у вас не открываются и другие сайты, появляются ошибки HTTPS, сертификатов или доступа к доменам, тогда стоит проверить и сеть. На Windows можно открыть командную строку от имени администратора и выполнить:
ipconfig /flushdns
После этого перезапустите браузер и попробуйте открыть сайт заново. Если подозреваете DNS, можно посмотреть нашу подробную инструкцию как настроить DNS на компьютере, телефоне и роутере.
Выше перечислены все основные советы, на которые я бы вообще обращал внимание. Есть другие редкие случаи, но если другие сайты открываются нормально – значит, просто ждите исправления ошибок программистами. А если у вас не открывается не один сайт, а сразу несколько, то это уже может быть другая история – для такой ситуации у нас есть отдельная инструкция что делать, если не открываются некоторые сайты. А интересующимся, что вебмастера будут делать на своей стороне, можете посмотреть ниже.
Я программист, вебмастер или владелец сайта – как решить проблему?
Ну что, коллеги, добро пожаловать в этот раздел! За более чем 10 лет практики разработки сам пару раз падал в бесконечный цикл. Причем это было и на каких-то своих костыльных решениях, и на WordPress. Методика поиска примерно одинаковая:
- После чего появилась ошибка? Что-то подключили? Что-то выкатили? Что-то изменили? Поменяли SSL, включили CDN, переехали на другой хостинг, добавили плагин редиректов, поменяли адрес сайта, перенесли WordPress, обновили правила в .htaccess? Попробуйте сделать обратный ход. Да, универсального решения здесь не может быть – мало ли что и куда подключается. Этот пункт я вынес сюда первым не для того, чтобы вдаваться в философию, а чтобы выявить действительно интересные ошибки – их рекомендую писать в комментарии. На своей памяти еще на старой Joomla устанавливал компонент галереи, она по итогу конфликтовала в общем цикле и пыталась нагло редиректить. Удалил, исправлять не стал.
- Настоящий первый пункт – если вы на Apache, смотрим .htaccess. Причем смотрим не только в корне сайта, но иногда и в конкретной папке компонента, модуля, плагина или отдельного приложения. В основном многие ошибки редиректа и заканчиваются в .htaccess. Сейчас в моде делать редиректы http-https, www-без_www, index.php на главную и слэш в конце адреса. Самый рабочий пример – вы с index.php делаете редирект на главную «/», а по итогу главная видится как index.php и снова подключает это правило. Например, вот это может вызывать бесконечный редирект, хотя на конкретной конфигурации поведение может отличаться:
RewriteCond %{REQUEST_URI} /index.php
RewriteRule ^(.*)$ https://yoursite.com/? [R=301,L]
- Для сторонников Nginx – с одной стороны проще из-за явных правил редиректов, с другой стороны та же ISP-панель или ее аналоги любят залезать в конфиги и вносить свои правки. Рекомендация – лезть в конфиги Nginx: главный конфиг, server-блоки, подключаемые файлы сайта, конфиги панели и правила, которые добавляются автоматически. Особо проверяем связки вроде «слушаем 80 и редиректим на 443», «слушаем 443 и снова редиректим на другой домен», «принудительно добавляем www» и «принудительно убираем www».
- Если вываливается при подключении чего-то внешнего, делаем поиск по всем файлам этого «чего-то» на предмет «Location». Я на языке PHP по привычке, так как именно заголовок Location часто делает редиректы. Смотрим, нет ли зацикливаний, условий без выхода и редиректа на тот же самый адрес. Если участок сомнительный, временно комментируем его на тестовом окружении и проверяем цепочку заново.
- Не из моего опыта, но вполне интересная ошибка для кириллических доменов вида САЙТ.РФ – некоторые вебмастера думают, что это обычные Unicode-символы, но на самом деле их нужно корректно конвертировать в Punycode. Например, домен может выглядеть красиво по-русски, а внутри DNS и серверных правил использоваться в виде xn--… Если где-то указана русская версия, где-то Punycode, а где-то еще и другой регистр или протокол, можно получить очень странный цикл. Это уже задача из уровня конкретной узкой проблемы, но забывать о ней не стоит.
Итого основные мероприятия для вебмастеров, особенно начинающих: проверяем .htaccess, правила Nginx, адрес сайта, SSL, CDN и временно отключаем все плагины, если речь про CMS.
Для WordPress я бы начал с самых частых мест. Проверьте «Настройки» – «Общие» – «Адрес WordPress (URL)» и «Адрес сайта (URL)». Там не должно быть так, что в одном поле стоит http, а в другом https, или в одном поле есть www, а во втором нет, если ваши серверные правила жестко перекидывают на другой вариант. Если в админку не пускает, смотрим значения siteurl и home в базе данных или временно задаем их в wp-config.php. После этого отключаем плагины редиректов, плагины кэша, SSL-плагины и все, что умеет менять URL.
Отдельная классика – конфликт WordPress, SSL и прокси. Например, сервер думает, что к нему пришли по http, потому что перед ним стоит Cloudflare, Nginx-прокси, балансировщик или панель хостинга. WordPress или плагин принудительно отправляет пользователя на https. Прокси снова передает запрос на бэкенд как http, и круг повторяется. В таких случаях нужно проверять не только сам сайт, но и заголовки X-Forwarded-Proto, настройки прокси, SSL-режим CDN и доверие к прокси на стороне приложения.
Если используете Cloudflare или похожий CDN, обязательно проверьте SSL-режим. Частая ошибка – включить режим Flexible при том, что сайт сам уже принудительно переводит посетителей на HTTPS. В итоге браузер приходит к Cloudflare по HTTPS, Cloudflare идет к вашему серверу по HTTP, сервер снова требует HTTPS, и получается петля. Обычно для сайта с нормальным SSL-сертификатом на сервере нужен режим Full или Full (strict), но перед переключением убедитесь, что сертификат на хостинге действительно установлен и работает.
Очень надеюсь, что эту ошибку вы не получили уже на рабочем сервере. Но тогда есть вариант использовать любые сервисы проверки редиректов. Гуглим «redirect test», «redirect checker» или «проверка редиректов» – попадете на сторонние сайты, которые покажут, куда вообще ваш сайт совершает редирект и с каким статусом. А то цикл может быть гораздо сложнее, чем просто страница А ведет на страницу Б. Иногда цепочка выглядит так: http без www – https без www – https с www – снова http без www.
Для быстрой проверки из консоли можно использовать:
curl -IL https://yoursite.com
Ключ -I покажет только заголовки ответа, а -L пройдет по редиректам. В выдаче смотрим статусы 301, 302, 307, 308 и заголовок Location. Если один и тот же адрес повторяется по кругу, направление поиска почти найдено. Только помните, что постоянные редиректы 301 и 308 могут кэшироваться браузером, поэтому после исправления иногда кажется, что ошибка осталась, хотя сервер уже отвечает нормально. Проверяйте в другом браузере, в приватном окне или через внешний redirect checker.
С разовыми запросами неплохо справляется и Яндекс.Вебмастер: «Инструменты» – «Проверка ответа сервера». Он тоже даст ответ сервера, из которого уже можно вытащить страницу редиректа и статус. Такой анализ может выявить сложные многоэтапные циклы, неверную отработку внешних CDN, конфликт http/https, www/без www, слэша в конце URL, языковых версий сайта и мобильных редиректов.
Чек-лист для владельца сайта
Если времени мало, а сайт уже лежит, я бы шел по такому короткому плану:
- Открыть сайт через внешний redirect checker и посмотреть всю цепочку переходов.
- Проверить, повторяется ли один и тот же URL в цепочке.
- Временно отключить CDN или перевести запись DNS в режим без проксирования, если это безопасно для вашей схемы.
- Проверить SSL-режим CDN и наличие рабочего сертификата на самом сервере.
- Для Apache временно вернуть дефолтный .htaccess или закомментировать свои редиректы.
- Для Nginx проверить server-блоки, include-файлы и правила, которые могла добавить панель управления.
- Для WordPress отключить плагины кэша, редиректов и принудительного HTTPS.
- Сверить адрес сайта в настройках CMS, базе данных и конфиге.
- Очистить серверный кэш, кэш CDN и проверить сайт в другом браузере.
Главная мысль для вебмастера: не пытайтесь чинить все сразу. Сначала найдите реальную цепочку редиректов, потом выключайте по одному возможному виновнику. Если одновременно поменять .htaccess, SSL, плагины и CDN, можно случайно убрать симптом, но так и не понять настоящую причину.
FAQ – короткие ответы
ERR_TOO_MANY_REDIRECTS – это вирус?
Обычно нет. Чаще это ошибка сайта, кэша, куки, VPN, расширения или правил сервера. Но если браузер сам открывает странные сайты, перекидывает на рекламу и ошибка появляется на разных ресурсах, тогда уже стоит проверить расширения и компьютер на нежелательное ПО.
Почему сайт открывается на телефоне, но не открывается на компьютере?
Чаще всего отличается кэш, куки, браузер, VPN, DNS или сеть. На телефоне вы можете сидеть через мобильный интернет, а компьютер идет через домашний роутер и другого провайдера. Поэтому такая проверка полезна: она помогает понять, проблема общая или только на одном устройстве.
Можно ли исправить ошибку одной кнопкой?
У пользователя иногда помогает очистка куки конкретного сайта, запуск в другом браузере или отключение расширений. У владельца сайта одной универсальной кнопки нет, потому что петлю могут создавать .htaccess, Nginx, WordPress, CDN, SSL, плагин или приложение. Поэтому сначала ищем цепочку редиректов, а уже потом исправляем конкретное правило.
Почему ошибка появилась после перехода на HTTPS?
Потому что принудительный переход на HTTPS часто настраивают сразу в нескольких местах: на сервере, в CMS, в CDN и в плагине. Если одно правило отправляет на HTTPS, а другое по какой-то причине возвращает на HTTP или другой вариант домена, браузер получает круг. В такой ситуации особенно внимательно проверяйте SSL-режим CDN, адрес сайта в CMS и правила редиректа на сервере.




Я перепробовал все. А она не работает. Плохая статья.
Да. Залезли в конфиг, вроде все грамотно, копируем точно такой же – и все сразу же работает. Магия какая-то.
И правда оказалась ошибка на стороне сервера. Через день исправилось.