Что значит большое количество переадресаций
Перейти к содержимому

Что значит большое количество переадресаций

Как исправить ошибку Слишком много перенаправлений в браузере

Если вы видите ошибку Слишком много перенаправлений (ERR_TOO_MANY_REDIRECTS) в своем веб-браузере, значит что-то пошло не так. Также эта ошибка сопровождается сообщением Эта веб-страница имеет цикл перенаправления (This webpage has a redirect loop) и она блокирует загрузку сайта.

Ошибка Слишком много перенаправлений означает, что сайт продолжает циклично перенаправляться между разными адресами и это может никогда не прекратиться. Ваш браузер защищает вас от этого, разрешая только определенное количество перенаправлений (часто около десяти), прежде чем он «устанет» от этого и не выдаст данную ошибку.

Ошибка о цикличных перенаправлениях по-разному проявляется в разных браузерах:

Эта страница не работает (This page isn’t working)
перенаправил вас слишком много раз. ( redirected you too many times.)
Или
Эта веб-страница имеет цикл перенаправления (This webpage has a redirect loop)
Попробуйте очистить ваши куки. (Try clearing your cookies.)
ERR_TOO_MANY_REDIRECTS

Google Chrome

Страница не перенаправляет должным образом (The page isn’t redirecting properly).
Произошла ошибка при подключении к . Эта проблема иногда может быть вызвана отключением или отказом принимать куки. (An error occured during a connection to . This problem can sometimes be caused by disabling or refusing to accept cookies.)

Mozilla Firefox

Safari не может открыть страницу (Safari Can’t Open the Page).
При попытке открыть произошло слишком много перенаправлений. Это может произойти, если вы открываете страницу, которая перенаправляется на другую страницу, которая затем перенаправляется на исходную страницу. (Too many redirects occurred trying to open . This might occur if you open a page that is redirected to open another page which is then redirected to open the original page.)

Safari

Очень часто это является результатом конфликтных перенаправлений, одно из которых пытается принудительно установить HTTPS (SSL) соединение, а другое – обратно HTTP (не-SSL), или между URL-адресами с www и без www.

Для таких CMS, ​​как WordPress или Magento, это решается приведением к общему конфигурации base_url или URL-адреса сайта в коде или базе данных с перенаправлением в файле .htaccess.

Как определить причину цикличного перенаправления

Вы можете следить за всеми перенаправлениями с помощью инструментов разработчика в браузере Firefox или Chrome. Эти инструменты обычно открываются нажатием клавиши F12 (или Ctrl+Shift+I ). Откройте Сеть (Network), а затем перезагрузите страницу, на которой у вас возникла проблема.

После перезагрузки страницы вы увидите список перенаправлений. Проанализировав результаты, вы сможете найти «виновника» (если срабатывает перенаправление на одну и ту же страницу).

Основные типы перенаправления (код ответа состояния HTTP):

  • 301 редирект (постоянное перенаправление) – означает, что страница или элемент перемещен на постоянной основе, и браузер должен искать его в новом месте. Чаще всего записываются в файле .htaccess .
  • 302 перенаправление или редирект – это временное перенаправление, которое означает, что страница или элемент перемещен временно, и его адрес в будущем может измениться. Чаще всего записываются в коде веб-сайта.

Как исправить ошибку перенаправлений (редиректов)

Шаг №1: Очистить кэш и куки браузера

Очень часто циклические перенаправления могут вызываться файлами cookie в браузере, в которых закэшированы старые редиректы. Данные браузера, такие как история просмотров, кэш, файлы cookie и т.д., могут содержать ошибочные данные, которые вызывают ошибку ERR_TOO_MANY_REDIRECTS . Очистка этих данных – эффективный способ исправить ошибку. Чтобы очистить данные просмотра:

  • В Google Chrome нажмите Ctrl+Shift+Delete , выберите необходимые данные, время жизни данных и нажмите Очистить данные (clear data)
  • В Mozilla Firefox нажмите кнопку «Меню» и выберите «Параметры». Выберите Конфиденциальность, а затем очистить свою недавнюю историю (clear your recent history). Выберите Everything для диапазона времени, а затем нажмите Очистить сейчас (Clear Now).

После очистки данных браузера вы можете попробовать зайти на сайт и посмотреть, исчезла ли ошибка.

Шаг №2: Попробовать в других браузерах

Ошибка ERR_TOO_MANY_REDIRECTS может возникать только в браузере, который вы используете. Вы можете попробовать открыть тот же URL в другом браузере. Если ошибка не устраняется, значит проблема может возникать на стороне сервера.

Правильные настройки редиректов (перенаправлений)

Как мы уже упоминали выше, причиной ошибки могут быть неправильные настройки на вашем сайте. В основном, они касаются настроек редиректов в файле .htaccess. Данный файл – это файл конфигурации, который используется для изменения поведения сервера Apache для каждой папки на сайте или сервере. С его помощью можно редактировать только некоторые конфигурации Apache, хотя перенаправления обычно разрешается редактировать.

У вас может быть несколько файлов .htaccess , которые каскадно влияют на каталоги. Если у вас есть один .htaccess в родительском каталоге, и другой в подкаталоге, они оба будут влиять на этот подкаталог. Т.е., это может быть причиной конфликта между этими файлами на разных уровнях.

Ниже приведен ряд примеров перенаправления (редиректов) в файле .htaccess , которые обычно используются на сайтах.

Принудительный HTTPS

Приведенный ниже код сначала проверяет, поступил ли запрос на сервер с использованием HTTP или HTTPS. Если в запросе не использовался HTTPS, то конфигурация скажет браузеру перенаправить на HTTPS-версию того же веб-сайта и URL-адреса, которые были запрошены ранее:

Принудительный HTTPS при использовании прокси-сервера

Вы можете использовать прокси-сервер, например, балансировщик нагрузки или веб-брандмауэр, для которого можно настроить использование SSL (HTTPS) на внешнем интерфейсе, но не на внутреннем. Чтобы это работало правильно, вам нужно проверять не только HTTPS в запросе, но и проверять, передал ли прокси-сервер исходный HTTPS-запрос на сервер, используя только HTTP. Код ниже проверяет, был ли запрос перенаправлен с HTTPS, и, если это так, не пытается дополнительно его перенаправлять:

Перенаправление с HTTP на HTTPS в Nginx

Если на вашем веб-сервере работает Nginx, вы можете легко перенаправить весь ваш HTTP-трафик на HTTPS, добавив следующий код в файл конфигурации Nginx:

Замените domain.com на свой домен.

Принудительно без www

Следующий код в файле .htaccess проверяет, был ли запрошен сайт с www в начале доменного имени. Если www есть в URL, тогда он переписывает запрос и говорит браузеру перенаправить на доменное имя без www:

Принудительно с www

Этот код в файле .htaccess проверяет, не было ли запрошено имя сайта с www в начале доменного имени. Если www не включен в URL, тогда он переписывает запрос и говорит браузеру перенаправить на www-версию домена:

Краткий итог

Если на вашем сайте есть редирект в файле .htaccess , что перенаправляет на URL, который не совпадает с тем, что находится в базе данных, вы можете получить ошибку в браузере о бесконечном цикле перенаправления ( ERR_TOO_MANY_REDIRECTS ), как описано выше.

Однако теперь вы знаете, как выглядят некоторые распространенные перенаправления в .htaccess . Также, с помощью данной статьи, вы сможете сами протестировать, найти причину ошибки, а также устранить ее самостоятельно.

Как исправить ошибку ERR TOO MANY REDIRECTS?

В рамках данной заметки, я расскажу вам что представляет собой ошибка ERR_TOO_MANY_REDIRECTS или «На этой странице обнаружена циклическая переадресация» («Сайт выполнил переадресацию слишком много раз»), а так же как ее исправить. И начну с определения.

Что такое ошибка ERR_TOO_MANY_REDIRECTS?

Как исправить ошибку ERR TOO MANY REDIRECTS?

Если говорить техническим языком, то ошибка ERR_TOO_MANY_REDIRECTS возникает из-за непрекращающихся редиректов (что это и подробности?) от одной страницы к другой. Чаще всего, это циклическая переадресация, например, как в случае переадресации с WWW в домен без WWW и обратно, или же с http в https и обратно. В стиле «www,site > site > www,site > site > . «.

Простым же языком, ошибка «На этой странице обнаружена циклическая переадресация» возникает тогда, когда браузер никак не может достигнуть конечной страницы. Общий механизм выглядит примерно следующим образом:

1. Браузер пытается открыть страницу page1.

2. Сайт в ответ присылает браузеру, что нужно открыть страницу page2 (перенесли, или структура сайта поменялась, или как ранее упоминал переадресация с http в https).

3. Браузер пытается открыть страницу page2.

4. Сайт в ответ пишет браузеру, что ему нужно открыть страницу page3 или, как в случае с циклической переадресацией, опять же страницу page1.

5. Браузер пытается открыть страницу page3 или page1 (и во втором случае повторяется аналогичная ситуация, как в шаге 2).

N. Браузер достиг некоторого максимального счетчика переадресации (или же обнаружил цикл) и отобразил ошибку ERR_TOO_MANY_REDIRECTS пользователю.

При этом чаще всего самих страниц немного, просто они заставляют браузер постоянно открывать друг друга, не предоставляя пользователю никакого контента (что это?). Утрируя, это как в ситуации «Вася сказал идти к Коле, Коля сказал идти к Пете, Петя сказал идти к Васе, а Вася снова сказал идти к Коле и так до бесконечности».

Как исправить ошибку пользователю?

Стоит понимать, что не обязательно ошибка ERR_TOO_MANY_REDIRECTS возникает только из-за сайта (или пользователь никак не может на нее повлиять). Поэтому стоит попробовать следующее:

1. Открыть сайт в другом браузере. Как бы это не могло казаться парадоксальным, но, порой, некоторые сайты банально нельзя открыть в каком-либо браузере И дело не только в возможных ошибках, о которых речь пойдет далее. Иногда внутри сайта существует техническая ошибка, которая приводит к постоянной передаресации, если страницу открыть определенным браузером.

Примечание: Кстати, так же советую ознакомиться с обзором зачем пользователю несколько браузеров.

2. Почистите cookies браузера. У браузеров предусмотрен специальный механизм под названием cookies (что это и особенности?), позволяющий сайтам хранить частички информации. Обычно, в них хранятся какие-то небольшие персонализированные настройки или же маркеры безопасности (чтобы пользователю не приходилось каждый раз вводить пароль и логин). И иногда из-за некорректно сохраненных данных (или по иным причинам, связанным с информацией в куки) может возникать ошибка «Сайт выполнил переадресацию слишком много раз». Поэтому стоит их почистить для конкретного сайта.

3. Почистите кэш браузера. Когда вы открываете сайт в интернете, то браузер сохраняет на жесткий диск (или в оперативной памяти) часть информации. Это могут быть различные стили, картинки, скрипты и многое-многое. Однако, в некоторых ситуациях, из-за технических причин, это может приводить к ошибке ERR_TOO_MANY_REDIRECTS. Поэтому кэш в браузере так стоит почистить.

4. Различные расширения браузера. Если у вас в браузере установлены расширения, то стоит проверить, что они никак не влияют (отключить и посмотреть, откроется ли сайт). Например, расширения для социальных сетей.

5. Проверьте корректность даты и времени. Если у вас в компьютере установлены некорректные дата и время, то в некоторых случаях это так же может приводить к ошибке с переадресацией.

Как исправить ошибку автору сайта?

Если же вы автор сайта и хотите узнать как вы можете исправить ошибку ERR_TOO_MANY_REDIRECTS, то вам стоит обратить внимание на следующие места:

1. Файл htaccess. Одни из частых ситуаций: правила редиректов противоречат друг другу, некорректно составленные условия, большое количество перенаправлений и тому подобное.

2. Плагины и модули, использующие редиректы. Во-первых, стоит проверить настройки. Например, если это модуль для переадресации, то убедиться, что у вас не используются противоречащие друг другу правила перенаправления. Во-вторых, стоит по одному временно отключать модули и смотреть не пропала ли проблема с редиректом. И если такой модуль обнаружили, то уже разбираться в его настройках.

3. Если у вас в коде используются редиректы, то стоит проверить корректность адресов. Вполне возможно, что добавлялся лишний символ или параметр, которые приводили к переадресации.

4. Существующие сервисы для проверки цепочки редиректов. Например, Redirect Checker. Конкретный список не указываю, так как их легко найти в интернете (и могут меняться время от времени). Сервисы обычно предоставляют цепочку редиректов, из которой можно понять в каком месте возникла проблема.

Примечание: Хотя вы самостоятельно можете отследить проблему с редиректами. Для этого достаточно в браузере для страницы открыть вкладку с сетевыми запросами и указать галочку «Preserve log».

5. Если вы использует CDN сервисы, то в них так же стоит почистить кэш. CDN сервисы, такие как Cloudflare, снимают часть нагрузки с реального сайта, однако это так же означает дополнительную прослойку, в которой могут быть ошибки (например, в сохраненном кэше). Кстати, кроме очистки кэша, так же советую внимательно изучить настройки (бывает полезным).

Понравилась заметка? Тогда время подписываться в социальных сетях и делать репосты!

Ошибка «слишком много переадресаций». Как отключить лимит переадресаций браузера?

Доброго дня! У меня скрипт на PHP написан таким образом, что по достижению конца выполнения (5-30 минут 1 цикл, в котором 15 редиректов), ищет нет ли новых заданий на выполнение, и если есть — продолжает выполняться, редиректит на 1ый шаг с новым заданием (конфигом).

Столкнулся с проблемой, что через определенное количество циклов (я-то планировал оставить комп на пол дня и отойти) мне браузер Chrome выдает ошибку «Сайт scripts.loc выполнил переадресацию слишком много раз.» Причем, похоже, ему достаточно ровно 20 редиректов и не важно в какой промежуток времени.

Где выставить этот лимит срабатывания максимального количества редиректов, или вообще отключить для определенных сайтов? Гуглил, нигде такой проблемы нет, в основном у всех косяки с движками-вирусами и т.п.

Переписывать скрипт не собираюсь, специально был написан таким образом.

  • Вопрос задан более трёх лет назад
  • 1888 просмотров

Оценить 7 комментариев

  • Facebook
  • Вконтакте
  • Twitter

Rou1997

Rou1997

Rou1997

Rou1997: Конечно стоит, но я для себя уже уяснил что проще сделать самому, чем искать и менеджерить программиста, который дешевле чем за 20$ в час не пошевелится. Психология у фрилансера такова — проще ничего не делать чем делать за небольшие деньги. Сталкивался уже раз 100 с подобными ситуациями. Фрилансер может днями сидеть ловить работу на фрилансе, дорогую, а дешевую брать не будет. Ну это мое имхо, и вряд ли кто то меня когда-либо разубедит, поскольку уже лет 7 варюсь в этом всем, и находить на разовые проекты программистов удавалось крайне редко за адекватные 10-20$ в час. У самого знакомых программистов с десяток, которые говорят «то есть ты будешь деньги зарабатывать, а я че? опыт у меня есть, я вон в офисе сижу уже 3 года работаю! минимум 50$ за эту задачу» Задача из разряда — написать парсер простенький который я сам за 2-3 часа сейчас пишу со знаниями PHP на уровне «читал 10 лет назад книгу красную PHP 5».

ERR_TOO_MANY_REDIRECTS – как исправить и в чем причина

Если вы пользуетесь каким-либо браузером на своем компьютере или телефоне и видите «Ошибка 3xx (net::ERR_TOO_MANY_REDIRECTS) — вы не одиноки. Такое часто случается и может быть временным или постоянным в зависимости от адреса URL.

Это руководство расскажет вам обо всем, что нужно знать об ошибке слишком большого количества перенаправлений в браузере Google Chrome, Яндекс Браузере и на телефоне.

Что такое HTTP-переадресация?

HTTP редиректы — это метод, с помощью которого веб-сайт направляет ваш браузер на другую страницу вместо той, на которую вы перешли по ссылке. Это может быть связано с обслуживанием, переездом страницы или по другим причинам. Например, компания могла сменить свое доменное имя и перенаправить сайт на старом домене на сайт, использующий новый адрес.

Хром или Яндекс Браузер может обрабатывать до 20 повторных перенаправлений, не выдавая ошибку, но как только этот порог будет превышен, он выдаст ошибку ‘ERR_TOO_MANY_REDIRECTS’.

Процедура выглядит следующим образом:

  • Браузер отправляет веб-серверу сообщение GET.
  • Сервер отвечает сообщением 3xx с указанием перенаправленного URL-адреса
  • Браузер подтверждает сообщение и переходит на новый адрес
  • Браузер загружает веб-сайт

Цикл перенаправления — это когда браузер направляется на перенаправленный URL, который возвращает его на первоначальный URL, который снова перенаправляет его и так далее. Это на удивление легко сделать администратору сайта. Я расскажу вам, что можно предпринять, если вы видите ошибку «Слишком много повторных редиректов» на примере браузера Google Chrome (вЯндекс Браузере все практически также).

Слишком много повторных переадресаций в качестве посетителя сайта

Если вы посещаете веб-сайт, вы можете очистить кэш браузера и файлы cookie.

Откройте браузер и выберите в верхней части выпадающее меню.

Затем выберите Дополнительные инструменты > Удаление данных о просмотренных страницах… в выпадающем меню, вы также можете выполнить комбинацию клавиш Ctrl+Shift+Del.

Теперь установите галочку напротив пункт Изображения и другие данные, сохраненные в кеше.

И затем кнопку Удалить данные.

Теперь повторно зайдите на URL-адрес, на котором возникла ошибка. Теперь вы должны получить доступ к сайту.

Если это не сработало, попробуйте использовать другой браузер. Если другой браузер работает, а Chrome нет, попробуйте следующее:

Введите chrome://extensions в адресной строке Chrome и нажмите Enter.

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

Перед повторным тестом обязательно отключите только одно расширение, иначе вы не узнаете, какое из них было причиной возникновения проблемы. Целью является выяснить, можно ли установить причину проблемы в каком-то конкретном расширении браузера.

Слишком много перенаправлений для администратора сайта

Если вы являетесь администратором или владельцем веб-сайта, вам есть над чем поработать. У вас где-то установлен редирект, который либо зацикливается, либо повторяется слишком много раз. Давайте выясним, какие редиректы зацикливаются, чтобы вы могли решить проблему вашего сайта.

  • Перейдите на страницу Redirect-checker и введите ваш URL-адрес
  • Выберите опцию » analyze», чтобы увидеть, что и куда перенаправляет.
  • Определите те перенаправления, которые возвращаются к самим себе
  • Измените циклические редиректы через интерфейс администратора вашего сайта

«Изменить циклические редиректы через интерфейс администратора вашего сайта» может звучать немного неубедительно, но точный метод зависит от того, на какой платформе работает ваш сайт.

Все, что вам нужно сделать, это определить редирект, вызывающий проблему, затем устранить проблему на той платформе, которую вы используете для управления сайтом, обратившись за руководством к документации вашей платформы и хостинг-компании.

После устранения проблемы тщательно проверьте ссылки, чтобы убедиться, что результат работы исправления соответствует ожиданиям.

Redirect

Существуют различные типы редиректов, все они имеют коды, начинающиеся с 3xx.

  • 301 — Страница перемещена навсегда.
  • 302 — Веб-страница временно недоступна.
  • 303 — используется для перенаправления после PUT или POST, чтобы предотвратить обновление страницы.
  • 307 — Веб-страница временно недоступна для чего-то запланированного. Наследник перенаправления 302 для HTTP 1.1.
  • 308 — Постоянное перенаправление по иной причине.
  • 300 — Специальное перенаправление, которое используется редко.
  • 304 — Специальный редирект, указывающий на обновление кэша для кэшированных веб-страниц.

Почему используются редиректы

Существует масса уважительных причин для использования редиректов, и вы будете удивлены тем, как часто они используются. Самая распространенная необходимость в использовании переадресации возникает, когда вы перемещаете страницу на новый сайт или URL. Если вы долго работали над SEO, вы не хотите все потерять при перемещении страницы.

Вместо этого вы используете 301 редирект, чтобы сообщить браузерам и поисковым системам, что ваша страница переехала. При этом посетители все равно попадают на страницу и сохраняются все наработанные SEO преимущества.

Редирект 302 или 307 полезен, если вы тестируете страницу или обновляете ее в соответствии со стилем или новой технологией. Если структура URL останется неизменной, вам нужно добавить временное перенаправление, прежде чем публиковать страницу на постоянной основе.

Переадресация очень полезна для управления сайтом без потери SEO и пользователей. Они требуют внимательности и проверки, но могут быть очень полезным инструментом.

ERR_TOO_MANY_REDIRECTS

Существует множество причин, по которым ERR_TOO_MANY_REDIRECTS может появляться в Яндекс Браузере, и не все проблемы связаны с ним. Начните с проверки сайта в другом браузере, чтобы убедиться, что это происходит только в нем, а затем переходите к диагностике и устранению проблемы.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *