Как исправить ошибку «слишком много переадресаций» в WordPress
Радость обладания своим собственным блогом на движке WordPress может быть омрачена лишь некоторыми незначительными ошибками. Среди них такие, например, как «Белый экран смерти», внутренняя ошибка сервера, «слишком много переадресаций». Последняя ошибка является довольно распространенной, и в этой статье мы рассмотрим практические советы по ее исправлению.
Почему возникает ошибка «слишком много переадресаций» (too many redirects) в WordPress?
Эта ошибка обычно возникает из-за неправильной настройки перенаправлений (редиректов). Сайт на WordPress использует SEO-структуру URL, которая основана на функции перенаправлений. Например, если вы измените структуру URL с использования идентификатора на название записи, тогда при заходе на старые ссылки вида {DOMEN}/?=777
вы будете перенаправлены на страницу вида {DOMEN}/nazvaniye-zapisi/
.
А из-за неправильной настройки инструментов перенаправления сайт может перенаправлять пользователей на URL-адрес, который фактически перенаправляет их обратно на старый URL-адрес. В этом случае браузер пользователя попадает в ловушку между двумя страницами и, следовательно, выдает соответствующее сообщение об ошибке.
Как решить проблему «слишком много переадресаций» в WordPress?
Самая распространенная ошибка здесь – неправильный URL-адрес в настройках конфигурации.
Предположим, например, что URL вашего сайта – https://yourdomain.com
, а вы перешли в раздел «Настройки» и установили его на https://www.yourdomain.com
. На большинстве хостингов можно выбирать между тем, добавлять или нет префикс www
к вашему доменному имени. Если вы на хостинге выбрали https://yourdomain.com
, а в настройках WordPress сайта указали https://www.yourdomain.com
, тогда это приведет к ошибке. Ошибка будет также, если сделать такую же операцию зеркально (на сервере с www
, а в настройках без www
).
Когда пользователь зайдет на страницу https://www.yourdomain.com
, он будет перенаправлен по конфигурации вашего сервера на https://yourdomain.com
, где он будет обратно перенаправлен на https://www.yourdomain.com
из-за настроек сайта. Получается цикличная переадресация.
В этом случае для решения проблемы вам нужно привести в соответствие настройки домена сайта на хостинге и в настройках в Консоли. Перейдите в Настройки -> Общие в Консоли и измените настройки URL.
Важно: убедитесь, что в настройках вы не указали URL адрес со слешем в конце.
Как изменить URL-адрес сайта, если нет доступа в Консоль
Если у вас нет доступа к Консоли WordPress, вы можете обновить эти настройки, указав их в файле wp-config.php
. Откройте этот файл в корне сайта любым текстовым редактором (например, Notepad++). Чтобы указать настройки для URL-адресов своего сайта, просто добавьте следующие две строчки в этот файл:
define('WP_HOME','https://yourdomain.com'); define('WP_SITEURL','https://yourdomain.com');
Добавьте эти две строчки до комментария /* That's all, stop editing! Happy blogging. */
.
Учтите также, что вам нужно заменить значение https://yourdomain.com
на свой фактический URL.
Сохраните файл и перезагрузите главную страницу своего сайта. Если вы по-прежнему получаете ошибку, попробуйте в настройках добавить домен с префиксом www
.
Исправление других проблем с перенаправлением
Если предыдущий шаг не помог решить проблему, скорее всего, на вашем сайте возник конфликт с каким-то плагином. Некоторые плагины WordPress используют методы перенаправления для выполнения самых разных задач.
Сначала нужно выяснить, какой плагин вызывает проблему. В первую очередь обратите свое внимание на те плагины, которые вы активировали (или же обновили) прямо перед ошибкой «Too many redirects». Попробуйте отключить этот плагин через Консоль, либо переименовав/удалив папку плагина из /wp-content/plugins/
.
Если вы не знаете, какой плагин вызывает эту проблему, для начала вам нужно отключить все плагины. После этого пробуйте поочередно включать плагины, и так вы сможете выявить «виновника торжества». Активируйте плагины по одному и после активации каждого плагина попробуйте просмотреть несколько страниц на вашем сайте, используя другой браузер (чтобы загружать сайт без кеша).
Важно! Делайте подобные процедуры на локальном сервере, а не на действующем хостинге.
Вот и все, это все возможные решения, которые помогут исправить ошибку «слишком много перенаправлений» в WordPress. Если у вас есть вопросы или замечания по данной теме, дайте нам знать об этом в комментариях ниже.
Alex
Слишком большое количество переадресаций может означать, что настройки страницы образуют циклическую переадресацию. В таком случае устранить проблему должен владелец страницы.
Сергей
Иногда хостер при переводе на https не передает серверную переменную $_SERVER[‘HTTPS’].
Она должна иметь значение «on». Возникает зацикливание в /wp-includes/template-loader.php
do_action( ‘template_redirect’ );
Можно попробовать устранить проблему разместив в начале файла вашсайт.ru/index.php строку
Сергей
Дополнение.
Также, чтобы заработала админка добавить
$_SERVER[‘HTTPS’] = ‘on’;
в файл wp-config.php