- Что делать в случае циклического перенаправления на странице
- Что это такое
- Зачем убирать
- Ошибка 310
- Основные причины возникновения
- Пути быстрого решения проблемы
- Как исправить ошибку на виртуальном хостинге
- Настройка редиректа на VDS Nginx+Apache
- Поддержание браузера в рабочем состоянии
- Как проверить наличие цепочки редиректов
- Популярные сервисы для отслеживания цепочек редиректов
- Netpeak Spider
- Анализ сайта Webmasta
- Проверка переадресации Website Planet
- Массовая проверка цепочек редиректов Majento
- SEO-помощник Rookee
- Работа с файлом настроек каталогов
- Настройка 301 редиректа в файле .htaccess и другими способами
- Что такое редирект 301
- Для чего он нужен
- Способы настроить редирект 301
- Настройка 301 редиректа в .htaccess
- Предварительная подготовка
- Склейка зеркал сайта (www / без www)
- Редирект с http на https
- Для всего сайта
- Постранично
- Для одной страницы
- Редирект с https на http
- Изменение домена
- Редирект на страницу с другим url (без параметров)
- Редирект для url (с параметрами)
- Редирект с index.php на главную
- Редирект со страниц со слешем на без слеша (для всего сайта)
- Редирект со страниц без слеша на слеш (для всего сайта)
- 301 редирект с 404 Not Found
- Финальный вид файла .htaccess
- Постоянный редирект для Nginx
- C www на без www
- Без www на с www
- Редирект для PHP
- Редирект 301 в разных панелях управления хостингом
- Cpanel
- ISPmanager
- Особенности редиректа для популярных CMS
- WordPress
- OpenCart
- Битрикс
- Joomla
- MODX
- Автоматическое создание кода
- Серверы для генерации кода
- Циклическое перенаправление
- Действия при циклическом редиректе
- Как узнать, что переадресация работает правильно
- Заключение
Что делать в случае циклического перенаправления на странице
Что это такое
Циклическое перенаправление на странице или циклический редирект, является бесконечным обращением браузера по адресу одной и той же страницы. В ряде случаев может происходить обращение на другой адрес, который, в итоге, опять приводит на запрашиваемую страницу.
Зачем убирать
- Для повышения скорости загрузки страниц сайта за счет отключения HTTPS-соединений.
- Для быстрого перенаправления посетителей на новый ресурс при переносе сайта на новый домен.
Ошибка 310
В случае неполадок со стороны сервера, циклическая переадресация становится причиной ошибки. При открытии сайта может появиться сообщение – «на этой странице обнаружена циклическая переадресация» что может служить сигналом о наличии ошибки 310.
Помимо этого, данная ошибка может появиться при использовании определённого браузера. Наиболее подвержен этому «заболеванию» браузер Chrome. Хотя и в других подобная проблема не редкость.
Основные причины возникновения
- Технические работы на сервере на некоторое время могут привести к возникновению ошибки. После их завершения, как правило, сайт быстро восстанавливает свою корректную работу. Если этого не произошло, в большинстве случаев, со стороны сервера были изменены настройки, отвечающие за переадресацию.
- Повышенная нагрузка на сервер при большом количестве посетителей, пытающихся одновременно получить доступ к странице. В результате сервер не выдерживает нагрузки и «падает» выдавая сообщение об ошибке.
- Некорректно выставленное время на устройстве, с которого выполняется вход на страницу. В большинстве случаев, браузер проводит автоматическую проверки времени на компьютере и сервере. При их несовпадении может возникнуть ошибка циклической переадресации.
- Большой объем данных сохранённых в кэше и cookie браузера.
- Запрет на сохранение cookie сайтов в браузере.
- Циклическое перенаправление и установка CMS
- В панели управления хостингом и в файле .htaccess одновременно указана переадресация на HTTPS.
- Ошибка циклического перенаправления может возникнуть при некорректной установке или настройке CMS. Это относится как к популярным «движкам» – WordPress, Joomla, Opencart, или 1С-Битрикс так и к менее известным.
Пути быстрого решения проблемы
Опираясь на приведённые выше причины, исправить проблему циклической переадресации можно следующими способами:
- Если после технических работ на сервере доступ к странице не восстановился, следует обратиться в техническую поддержку. В случае внесения изменений в настройки сервера, специалисты ТП объяснят, что необходимо предпринять.
- При «падении» сервера из-за большого количества обращений, необходимо дождаться снижения потока посетителей, а также восстановительных работ по налаживанию корректной работы ресурса. В данном случае, желательно обращение в техническую поддержку для выяснения причины отсутствия доступа.
- Очистить cookie, кэш и историю посещений в браузере.
- В настройках безопасности браузера разрешить сохранять cookie сторонних сайтов.
- Наиболее радикальным решением является переустановка CMS. Если это не помогает необходимо обратиться в техническую поддержку хостинг-провайдера и получить инструкции по установке и настройке.
- Убрать переадресацию на HTTPS из файла .htaccess.
Как исправить ошибку на виртуальном хостинге
Данная ошибка возникает при наличии редиректа в файле «.htaccess» и включенном редиректе в ISPmanager. Подробнее о нем можно прочитать в статье «Что такое редирект» нашего блога. Для решения проблемы нужно проверить файл «.htaccess» на наличие редиректов с «http» на «https» с помощью изложенного ниже алгоритма.
- Перейти в ISPmanager, в разделе «WWW» выбрать «WWW-домены» и нужный домен. Затем нажать «Каталог» в верхнем меню для перехода к файлам сайта.
- Выбрать файл «.htaccess» одним нажатием и кликнуть «Изменить» в верхнем меню.
- Проверить файл на наличие редиректов. О возможных вариантах редиректов в «.htaccess» можно узнать здесь.
- Проверить включен ли редирект в настройках ISPmanager. В разделе «WWW» нажать «WWW-домены», выбрать нужный домен и кликнуть «Изменить» в верхнем меню.
- В появившемся окне проверить — установлена ли галочка на пункте «Перенаправлять HTTP-запросы в HTTPS». Данный пункт будет виден только, если включена галочка на пункте «Защищенное соединение (SSL)».
- В разделе «WWW» нажать «WWW-домены», выбрать нужный домен и кликнуть «Редиректы» в верхнем меню. Появится список с редиректами. Если редиректы отсутствуют, то он будет пустым.
- Если редирект включен в пунктах 1, 2 и 3, нужно убрать лишние редиректы оставив лишь один из них.
Настройка редиректа на VDS Nginx+Apache
При использовании Nginx+Apache может произойти зацикливание редиректа «с http на https». Данная проблема связана с тем, что подключение по 80 порту идет на Nginx, а за ним уже находится Apache. Поэтому соединение Nginx и Apache работает не по SSL. В этом случае нужно отредактировать конфигурационный файл Nginx. Добавив в него такие значения:
Поддержание браузера в рабочем состоянии
Браузер также часто становится причиной циклической переадресации. Для минимизации его влияния на возможность возникновения ошибки необходимо совершать ряд профилактических действий.
- Своевременно чистить историю и делать это не реже одного раза в неделю, при активном использовании браузера.
- Отключить неиспользуемые плагины и расширения.
- Регулярно обновлять браузер на сайте официальных разработчиков.
Как проверить наличие цепочки редиректов
Самый очевидный способ обнаружения — массовая проверка кодов статуса на всех страницах сайта. Сделать это можно с помощью удобных автоматизированных инструментов (redirect tracker), работающих в браузере или в качестве клиентского ПО.
Они функционируют по схожему принципу. Пользователю нужно всего лишь разместить в операционном окне ссылку на интересующий ресурсы, нажать «Старт» и дождаться результатов сканирования.
Популярные сервисы для отслеживания цепочек редиректов
Netpeak Spider
- Язык: русский.
- Платно (с бесплатным пробным периодом).
- Помимо отслеживания цепочки редиректов, делает полный SEO-аудит сайта, включая выявление ошибок оптимизации.
- Анализирует крупные контентные сайты (более 100 000 страниц).
Анализ сайта Webmasta
- Язык: русский.
- Бесплатно.
- Отслеживает полную цепочку перенаправлений.
- Получение IP-адреса сайта и отслеживание всех веб-ресурсов на этом адресе.
Проверка переадресации Website Planet
- Язык: русский.
- Бесплатно.
- Отслеживание всех типов редиректов.
- Получение полного URL-адреса коротких, рекламных или партнерских ссылок без перехода.
Массовая проверка цепочек редиректов Majento
- Язык: русский.
- Бесплатно.
- Анализирует цепочку редиректов.
- Получение полного URL-адреса коротких, рекламных или партнерских ссылок без перехода.
SEO-помощник Rookee
- Язык: русский.
- Бесплатно (после регистрации).
- SEO-аудит сайта всех страниц сайта по 70 параметрам.
- Пошаговые рекомендации по исправлению найденных ошибок.
После того как страницы с кодами редиректов найдены, рекомендуется приступить к правке конфигурационного файла .htaccess.
Работа с файлом настроек каталогов
Для удобной настройки сервера используется файл .htaccess. С его помощью можно настроить правильные редиректы и значительно снизить риск возникновения циклической переадресации.
Перед настройкой, в файл обязательно вносится следующий код:
После этого идут настройки основных редиректов, подходящие для различных серверов, в том числе Nginx и Apache.
Важно помнить, что прежде чем вносить какие-либо изменения в файл .htaccess необходимо сделать его копию и желательно бекап всего сайта.
Начни экономить на хостинге сейчас — 14 дней бесплатно!
Источник
Настройка 301 редиректа в файле .htaccess и другими способами
Содержание:
Во время работы с сайтом может возникнуть ситуация, требующая создания автоматического перенаправления с одного url-адреса на другой, которые принято называть словом «редирект». Это часто происходитит при переезде ресурсе на новый домен, при переходе на обновлённый адрес, а также изменении адресов страниц. Чтобы пользователи смогли найти страницу по новому адресу, их должно автоматически «перекидывать» со старого адреса на новый.
Правильно сделать такое перенаправления поможет постоянный редирект или 301 Redirect. Что это такое и как настроить расскажем в этой статье.
Что такое редирект 301
Редирект — это процесс, при котором пользователь перенаправляется с неактуальной страницы на актуальную. Это может быть http и https или адрес с/без www. Редирект может выполняться как на сервере, так и в браузере. Но первый вариант считается предпочтительным, так как серверный редирект не замедляет загрузку страниц.
Permanent Redirect 301 («301 редирект», «постоянный редирект», «код состояния HTTP 301» или «301 редирект страницы») – один из двух наиболее распространённых видов редиректа, наряду с Temporary Redirect 302. Этот ответ сервера на запрос браузера или поисковой системы означает, что произошла перманентная переадресация страницы. Она больше не доступна по текущему адресу, так как переместилась на новый адрес навсегда. Её прежний url стал недействительным, а вес с него переместился на новый адрес.
Для чего он нужен
Правильная настройка 301 переадресации имеет особое значение для SEO-продвижения ресурса. Только при этом условии изменение домена или перемещение контента могут пройти без потерь в поисковых значениях. Поисковая система поймёт, что страница была перемещена по всем правилам, после чего сохранит её прежний вес и позицию в выдаче.
Также полезно знать как настроить редирект при следующих обстоятельствах:
- Переезд сайта на новый адрес. Нужно настроить перенаправление, чтобы все запросы к old_site.com перенаправлялись на new_site.com .
- Установка SSL-сертификата. Чтобы запросы к страницам, которые начинаются на http, перенаправлялись на адреса с префиксом
- Смена URL страницы. Это может быть связано с переходом на другую CMS или SEO-оптимизацией. Нужно, чтобы с example.ru/1hdkr5 был настроен редирект на example.ru/page_adress .
- Перенос разделов на субдомены. Было www.example.ru/example , а нужно example.site.ru .
- Для аккумуляциитрафика с онлайн-бренда, расположенного в разных доменных зонах. Вебмастер покупает домены example.com , example.ru , example.net , example.org и example.biz и на четырех последних сайтах настраивает редирект на example.com .
- Для быстрого перехода пользователя на мобильную версию ресурса со смартфонов и планшетных устройств.
Способы настроить редирект 301
- Плагины для CMS. Особенно часто данный способ применяется для настройки 301 редиректа в WordPress.
- Настройка через PHP. Редирект осуществляется через задания дополнительного условия в PHP-скрипте. При обращении к корневому файлу php браузер получает указание открыть одну страницу вместо другой.
- Настройка при помощи HTML. Используется в случае, если необходимо изменить лишь одну страницу на статическом сайте. Редирект происходит путём добавления специальной метки (тега), в заголовок html-документа.
- JavaScript — операция через браузер. Скрипт загружается в ПО, это более медленный способ. Работает только при включенном JavaScript в браузере. Используются преимущественно для редиректа с задержкой, когда сначала посетитель сайта видит страницу с обратным отсчетом и текстом. Для настройки в тег добавляется скрипт.
- Изменение файла .htaccess, отвечающего за дополнительную конфигурацию в серверах на Apache. Удобнее всего это сделать через панель управления хостингом.
Последний способ переадресации считается наиболее надежным, поэтому разберём его практически со всеми возможными вариантами.
Настройка 301 редиректа в .htaccess
Файл с расширением .htaccess – это дополнительный конфигурационный файл сервера Apache. Его используют для настройки веб-сервера, а также для обработки различных URL-адресов.
Для настройки 301 редиректа в файле .htaccess чаще всего применяют одну из трёх директив: Redirect, RedirectMatch или RewriteRule. Директивы относятся только к папке, где размещен .htaccess, а оттуда распространяются на дочерние папки.
Найти файл можно через панель управления хостинга (Cpanel, ISPmanager), либо использовать FTP-клиент. При любом варианте, нужно включить отображение скрытых файлов.
Предварительная подготовка
- Для создания 301 редиректа перейдите в панель управления вашего сайта.
- Проверьте наличие .htaccess файла в корневом каталоге сайта ( public_html ). Если файл отсутствует, создайте его.
- Рекомендуем все условия редирект записывать в блоке IfModule дабы избежать ошибок при выполнении файла htaccess.
- Перед тем как начать прописывать правила перенаправления, необходимо включить механизм преобразований (RewriteEngine), при помощи команды:
- Хостинги применяют по умолчанию 302 или любой другой 3xx редирект, В связи с этим в правилах используются флаги. Рекомендуем дописывать в своих правилах [R=301,L].
Далее разберём наиболее распространенные варианты 301 редиректа через .htaccess.
Склейка зеркал сайта (www / без www)
Сайты http://name.site и http://www.name.site для поисковых систем являются разными. А по факту это разные адреса одного сайта.
В поисковой системе сайт по одному адресу будет проиндексирован, а по второму адресу сайт будет зафиксирован как дубль, что может повлиять на продвижение ресурса. Для избегания дублей необходимо сделать так называемую «склейку» сайта, то есть прописать 301 редирект в .htaccess.
Если изначально в индекс поисковой системы попала версия «с www», в файл .htaccess добавляется редирект на «без www»:
Если произошла обратная ситуация и необходима переадресация с без «www» на «www», то в файл прописывается:
Редирект с http на https
Для всего сайта
В случае перехода на защищенный протокол https для всего сайта, необходимо настроить перенаправление с http на https, для этого в файл .htaccess добавьте:
Если данная конструкция не сработает, попробуйте другой вариант:
Если циклическое перенаправление на страницах осталось, попробуйте такой вариант:
Если редирект не работает и в этом случае, попробуйте такой вариант:
В результате пройдет перенаправление на https всех пользователей и поисковых систем, SEO значения при этом сохранятся.
Постранично
Бывают случаи, когда необходимо провести редирект на https всех страниц, кроме одной. В этом случае используют постраничный редирект:
Для одной страницы
Для редиректа с http на https одной страницы (например page.php), в файл добавьте следующую конструкцию:
Редирект с https на http
Если необходимо сделать 301 редирект всего сайта с https на http, в файл прописывается следующее:
Изменение домена
В том случае если необходимо перейти на другой домен, при этом сохранив SEO позиции, в файл .htaccess прописывают следующее:
Редирект на страницу с другим url (без параметров)
Иногда возникает ситуация, когда необходимо изменить url страницы, то есть перенести данные с одной страницы на другую страницу, при этом не потеряв SEO значения. В этом случае в файл .htaccess прописывают следующее:
Редирект для url (с параметрами)
В случае когда адрес содержит параметр (например, http://name.site/articles.php?section=1 , где параметром является « section=1 » ), то прописывают следующую конструкцию:
Редирект с index.php на главную
В тех случаях, когда главная страница сайта может быть недоступна по нескольким адресам одновременно, применяют следующую конструкцию:
Редирект со страниц со слешем на без слеша (для всего сайта)
Для избегания дублей в файле .htaccess используют следующую конструкцию:
Или более короткий вариант:
Редирект со страниц без слеша на слеш (для всего сайта)
Обратный вариант применяется, когда нужно использовать адреса со слешем.
301 редирект с 404 Not Found
Код 404 Not Found (страница не найдена) присваивается удалённой или несуществующей странице на сайте, а также часто возникает при попутке неправильно ввести url-адрес. Создание постоянного перенаправления с таких страниц актуально для контентных сайтов и крупных интернет-магазинов, где страницы часто удаляются по естественным причинам. Тогда возникает потребность перенаправить посетителей на одну из главных страниц сайта, чтобы они не уходили с ресурса, при виде ошибки.
301 редирект для страниц 404 Not Found сделать совсем несложно. Например, этот код перенаправит со всех 404-страниц на главную сайта:
Однако, делать такие редиректы в массовом порядке не рекомендуется, так как это может испортить SEO-статистику всего ресурса.
Финальный вид файла .htaccess
Пример файла htaccess, после добавления в него редиректов.
Постоянный редирект для Nginx
Этот веб-сервер наиболее часто используется в VPS-хостинге в связке с сервером Apache. В нем 301 редирект настраивается добавлением строк в конфигурационном файле nginx.config в секции server.
C www на без www
Без www на с www
После сохранения изменений в файле нужно перезапустить сервер выполнением команды « service nginx restart ».
Редирект для PHP
Этот вариант действует на уровне сервера. Он используется в тех случаях, когда редирект необходимо создать для большого количества страниц, не все из которых имеются на платформе.
- Загрузите файл index.php на жесткий диск.
- Сгенерируйте код.
- Вставьте код в текстовый файл, сохраните его и загрузите на сервер.
- Укажите основной URL в настройках сайта.
Редирект 301 в разных панелях управления хостингом
Cpanel
Нужно перейти в блок «Домены» => «Перенаправления». В появившемся окне выполнить следующее:
- в строке «Тип» выбрать «Постоянный 301»;
- в строке «https://www» из выпадающего списка выбрать домен сайта (например, example.ru);
- в строке «Перенаправляет на» указать для домена адрес http://example.ru;
- в блоке «Перенаправление www» поставить галочку напротив «Перенаправлять только с www»;
- сохранить изменения кликом на «Добавить».
ISPmanager
В этой панели можно править файлы nginx.config или .htaccess, но есть в панели и встроенный механизм переадресации. Например, для настройки редиректа на https/http, нужно снять галочку с соответствующего пункта в разделе «WWW-домены».
Особенности редиректа для популярных CMS
WordPress
Для самой массовой CMS существуют десятки плагинов для создания постоянного редиректа. Наиболее популярные среди них: Redirection, Simple 301 Redirects, Quick Page, SEO Redirection и Safe Redirect Manager.
Для примера, разберём перенаправление через плагин Redirection. Его настройка производится через консоль сайта во вкладке «Инструменты» или через раздел плагинов. Чтобы сделать переадресацию, достаточно заполнить два поля — Source URL и Target URL. Соответственно, в первой графе будет указан старый адрес, во второй — новый, без или с www.
Сделать это можно и через редактирование файла .htaccess в разделе управления хостингом. Чтобы подключить к нему, потребуется использовать FTP-клиент. Процесс не отличается от общей инструкции для .htaccess.
OpenCart
Для Opencart редактируется файл .htaccess. Код переадресации выглядит так:
Битрикс
Для перенаправления на новую страницу достаточно отредактировать файл .htaccess, внеся в него такой редирект:
Joomla
В панели администратора этой CMS нужно перейти в раздел «Компоненты» => «Перенаправление». В окне можно настраивать правила редиректа для различных страниц, а также отслеживать страницы с битыми ссылками и перенаправлять их на корректные адреса.
MODX
Для гибкой настройки переадресации стоит использовать плагин Redirector.
Автоматическое создание кода
Если самостоятельно создать код не получается из-за отсутствия знаний и опыта, можно попросить помощи у специалиста технической поддержки или воспользоваться автоматическими онлайн-генераторами.
Серверы для генерации кода
- Seomagnifier — 301 для www.
- 301 Redirect Code Generator Tool — для доменов и страниц.
- Generate .htaccess— для страниц, разделов сайтов, доменов.
Циклическое перенаправление
Одна из самых распространённых проблем при настройке 301 редиректа — вероятность создания не одинарного перенаправления, а целой цепочки редиректов. Это может быть вызвано некорректной настройкой файла .htaccess, плагина CMS или прямым действием вируса. В очень вероятной перспективе такие «цепочки» приводят к появлению циклического редиректа — ошибки с кодом «ERR_TOO_MANY_REDIRECTS».
Обнаружить циклическое перенаправление помогут бесплатные онлайн-сервисы проверки редиректа. Среди наиболее популярных:
Можно также установить специальные браузерные расширения для Google Chrome и Mozilla Firefox.
Действия при циклическом редиректе
- Если ошибка возникла в процессе настройки. Следует проверить корректность соблюдения правил работы 301 редиректа для конкретных адресов, по которым выдаётся ошибка.
- Если циклический редирект вызван вирусом. Когда зацикливание возникает при попытке открыть любой адрес на сайте, выход может быть один — откат к последней работоспособной версии, сохранённой в бекапе.
- Если зацикливание вызвано слишком длинной цепочкой редиректов (более пяти). Нужно сократить цепочку перенаправлений до одного шага.
Как узнать, что переадресация работает правильно
Проверить редирект лучше всего обычным тестированием. Нужно ввести в адресную строку браузера www.example.ru и нажать Enter. Если все правильно, то должен открыться сайт по адресу example.ru.
Для более точной информации можно использовать онлайн-сервисы отслеживания. С ними можно работать «в 1 клик» — достаточно просто вставить ссылку на интересующую страницу.
Для примера, разберём работу в сервисе Redirect Checker. После ввода ссылки перенаправления при нормальной работе внизу появится надпись «Everything seems to be fine», то есть «все работает». Сервис автоматически проверит редирект и сообщит, если он работает некорректно. Если переадресация не действует, пользователь увидит такие сообщения: «Редирект для домена больше не работает» или «Перенаправление не настроено».
Заключение
Для того чтобы поисковая система считала два разных адреса одним сайтом, должна работать постоянная переадресация. 301 редирект — удобный и надежный инструмент для оптимизации сайта, исправления ошибок и недоработок на сайте.
Использовать данный инструмент необходимо с осторожностью. Ведь неправильная настройка может привести к сбою в работе или потере поисковых позиций сайта.
Чтобы сайт после редиректа не только открывался по нужному адресу, но и работал без сбоев, ему нужна надёжная хостинг-площадка. Размещайтесь на VPS от Eternalhost, чтобы забыть о технических сложностях и полностью сосредоточиться на развитии своего интернет-ресурса!
Источник