Http коды ответа сервера, 301 и 302 редиректы и файл htaccess — простыми словами о том, что мешает


Содержание материала:

302 редирект

Что такое 302 редирект?

К большому сожалению, многие SEO специалисты забывают (а некоторые даже и не слышали) о 302 редиректе. Есть те, кто считает данную переадресацию аналогом 301-ой, и те, кто уверен в ее бесполезности. Все они не правы. Сегодня мы расскажем, что такое 302 редирект, опишем его функцию и приведем примеры использования

302 redirect (Temporary redirect) — это временная переадресация, которая, обычно, создается на срок от 1-го до 10 дней. Наличие 302 редиректа означает, что запрашиваемый документ ненадолго перемещен на другой URL адрес.

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

Отличие 302 от 301 редиректа

Принципиальное отличие 302 редиректа от 301 — постоянность.

302 редирект — временная переадресация.

301 редирект — постоянная переадресация.

Из этого следуют все нижеперечисленные различия и сходства.

302 редирект 301 редирект
Срок переадресации Временный. От 1 до 7 дней* Постоянный. Переадресация навсегда.
Передает «вес» страницы Нет Да
Страницы в поиске Обе страницы в поиске Только та, на которую настроен редирект
Возможность «склейки» доменов Нет Да
Поддерживается всеми основными поисковыми системами Да Да

* Проставление 302 редиректа на период до 7 дней безопасно с точки зрения SEO. В этот период обе страницы будут находиться в поиске. Срок рассчитан на основе наших исследований.

Настраиваем 302 редирект в .htaccess

Создание 302 редиректа в файле .htaccess доступно только для пользователей веб-сервера Apache.

Самый простой вариант создания 302 редиректа в .htaccess умещается в 2 строки:

А вот уже пример более сложной переадресации, которая распространяется на весь сайт:

Как Вы уже догадались, процедура проставления 302-го редиректа очень схожа с проставлением 301-го. Необходимо лишь поменять код (R=301 на R=302).

Так как ранее мы уже описывали создание редиректа 301 в .htaccess, то подробно не будем касаться этой темы еще раз.

302 редирект с помощью php

Создание 302 редиректа возможно не только в файле .htaccess, но и посредством php кода. Для реализации используется функция header(), которая способна создавать заголовки страниц. То есть, мы можем сгенерировать необходимый нам заголовок страницы при помощи php кода.

Прописывать код необходимо в самом начале Вашего документа. В противном случае при вызове функции header() возникнет ошибка и переадресация не сработает.

Синтаксис не имеет сложных элементов, весь код помещается в одну строчку. Имея поверхностные знания в php, Вы без труда разберетесь в нем.

Сразу же стоит сказать, при использовании Location по умолчанию используется 302 редирект, поэтому прописывать код необходимости нет.

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

Вот и все, переадресация настроена. Функция header() позволяет реализовать не только 302-й, но и другие виды редиректов, в том числе 301-й, 307-й.

302 редирект в SEO

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

В отличие от 301 редиректа, 302-й помогает решать такие задачи, как:

1. Переадресация во время доработки страницы

Представим, что у нас имеется ресурс, основной источник посетителей которого — органическая выдача. Закрывать страницы на время доработки в таком случае проблематично, так как это может повлиять на позиции и видимость.

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

После доработки страницы, редирект необходимо убрать.

2. Переадресация на временный раздел

Один из самых распространенных способов использования 302 редиректа — создание временной акции или распродажи. Что бы не портить главную страницу Интернет-магазина громоздкими баннерами и призывами, возможно сделать временную переадресацию на страницу полностью посвященную акции.

После проведения мероприятия редирект убирается, при этом видимость и позиции сайта сохраняются.

Важно!

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

Используйте 302 редирект грамотно и он позволит решить многие SEO задачи.

Проверка кода ответа сервера

Проверять код ответа нужно для того, чтобы поисковик правильно индексировал страницы. Если страницы, которые нужно включить в индекс, будут отдавать код 404 — никакого продвижения у вас не получится.

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

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

Как проверить код ответа сервера

Обычно нужно просто ввести урл страницы в один из сервисов, а он уже выдаст вам код ответа. Давайте посмотрим, что за сервисы можно использовать в этих целях.

Яндекс Вебмастер

В Яндекс Вебмастере проверить код ответа сервера можно с помощью инструмента Server Response. Указав url-адрес любой страницы, которая может находится в индексе, нажимаем «Проверить».

Поскольку страница работает нормально, поисковому боту отдается код 200, с пояснением «ОК» — все хорошо.

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

Как было написано выше, в ответ на несуществующую страницу, сервер выдает ошибку 404, с пояснением «Not Found» — не найдено.

Bertal

В отличии от Server Response, помимо ботов Яндекса на Bertal можно выбрать GoogleBot и BingBot, а также популярные браузеры. Укажем те же страницы, чтобы подтвердить правильную работоспособность сервера. В списке ботов выберем GoogleBot.

Пиксель Тулс

На Пиксель Тулс сервис для проверки ответа сервера поддерживает массовую проверку страниц. Список адресов можно вводить вручную или загружать из файла. Полученные результаты можно сохранить в CSV-файл.

Что такое ошибка 301

Ответ 301 moved permanently означает, что запрашиваемая страница переехала на новый URL. Новый адрес который указывается в отдельной графе сервиса.

Также приведу пример с проверкой страницы, с которой происходит 301 редирект.

В графе «Location» указана ссылка на которую происходит переадресация. Пояснение «Moved Permanently» означает, что страница переехала навсегда.

Что такое ошибка 503

Ответ 503 Server Unavailable означает, что сервер временно не может обрабатывать запросы из-за технических проблем. Этот код предназначен для уведомления поискового бота о том, что на сайте проводятся технические работы. После ошибки 503 бот при необходимости посетит страницу позже. При продвижении сайта нужно следить за страницами с ответом 503. После осуществления на сайте технических работ нужно проверить их, чтобы они вновь отвечали кодом 200 ОК.

Вот видос, где Гроховский поясняет за коды ответа сервера:

Все о 301 редиректе с примерами

301 Редирект — это способ постоянного перенаправления поисковых систем и посетителей сайта на адрес, который отличается от изначально запрашиваемого. Такой ответ сервера указывает на то, что старый url утратил актуальность, страницу переместили. После переиндексации Яндекс и Google поймут куда вы теперь хотите вести посетителей и станут предлагать пользователям новый адрес.

Удивительно, но факт: с помощью редиректа можно превратить потерю в победу и привлечь на свой ресурс еще больше трафика. Но об этом чуть позже.

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

Для чего используется 301 редирект?

Код 301 — эффективный, простой в реализации вариант переадресации web-страницы. Это удобный способ сохранения рейтинга конкретной страницы сайта.

Основные причины, чтобы добавлять 301 редирект:

  • сохранение «накопленных пользовательских сигналов» контента
  • с передачей ссылочного веса новой странице;
  • перенаправление трафика из других адресов на нужный;
  • в случае ребрендинга и смены домена, чтобы не потерять клиентов;
  • перемещение страниц;
  • склейка (с www и без, http и https);
  • удаление дублей страниц.

Внимание! Остановите выбор на адресе, который имеет стратегически большее значение, является предпочтительным для посетителей и поисковых систем.

Редирект можно назвать своеобразной палочкой-выручалочкой. В случае переезда всего сайта или отдельных страниц он сохранит все плоды проделанной работы: авторитет доменного имени и ранжирование в поиске. Главное — использовать перенаправление по назначению.

Сегодня вы получите 22 конкретных примера установки кода 301 и пять важных рекомендаций. С последних и начнем!

Советы по перенаправлению

Важно! Ошибки в настройках редиректов уменьшают эффект их использования.

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

Пример последовательных редиректов:

Пример последовательных редиректов

Правильным в данном примере должен быть редирект с 1 шага на 3й.

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

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

4. Переадресация не должна быть циклической, то есть странице нельзя ссылаться на саму себя.

Пример циклического редиректа: со страницы без слеша в конце URL стоит 301 редирект на страницу со слешем, на которой стоит 302 редирект обратно:

Пример циклического редиректа

5. Полезный редирект — тот, что ведет на страницу, которая во всех нюансах повторяет запрашиваемую.

Популярные виды редиректов

Желаете узнать, как сделать переадресацию? Сначала надо ознакомиться с названиями и особенностями самых используемых статусов.

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

Представляет собой временный редирект. Не склеивает накопленные внутренние метрики страницы.

Статус ответа сервера зависит от версии протокола HTTP:

  • HTTP 1.0 — текущая публикация временно перемещена на другой url (Moved Temporarily);
  • HTTP 1.1 — документ не найден (изменения ответа на Found).

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

Meta Refresh

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

Этот медленный статус относится к не рекомендованным SEO-техникам — он может привести к ухудшению поведенческих факторов и проседанию веб-страницы в органической выдаче.

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

В чем разница между постоянной и другими переадресациями?

302 и 301 редирект похожи между собой. Тем не менее для большинства случаев оптимальным решением станет именно постоянная переадресация.

Эти коды ответа HTTP не одинаково воспринимаются роботами и, соответственно, по-разному влияют на поисковую выдачу. Редирект 301 — знак того, что поисковику стоит забыть о старом адресе и больше никогда на него не заходить. А 302 дает сигнал о продолжении индексирования контента, размещенного на изначально запрашиваемой странице.
В случае 301 перенаправления утратившая актуальность публикация перестанет отображаться в поисковой выдаче. При 302 редиректе в индексе будут присутствовать обе страницы.

По сути, лучше всегда ставить код 301.

Временное перенаправление рекомендовано лишь в исключительных случаях, когда:

  • на запрашиваемой странице есть ссылки, которые обязаны и дальше индексироваться;
  • индексация новой страницы не является критичной.

Опыт из практики: 301 редирект против 302

Статус 302 — временная мера, сообщающая поисковикам о том, что на старой странице проходят технические работы и ее надо сохранить в выдаче.

Рассмотрим на примере. Сайт изменил доменную зону, а затем еще и обзавелся защищенным протоколом https. Однако разработчики настроили не постоянное, а временное перенаправление.

Топ-пост этого месяца:  Выбор оптимального тарифа и покупка виртуального хостинга на сервисе ProGoldHost

Во время работы 302 редиректа в индексе Яндекса и Google находилось 3 копии одной и той же интернет-площадки. Из-за этого произошло существенное проседание позиций.

Пример ошибки работы 302 редиректа

Когда ошибка была исправлена, роботы склеили дубли, исключив лишние страницы из своей выдачи. Сайт снова вернулся в ТОП.

301 редирект vs Canonical

Несмотря на определенные нюансы, поисковые системы установили четкие правила использования команд. Вот как их понимают Гугл и Яндекс:

  • 301 — «Моя страница навсегда переехала в другое место, она не вернется. Удалите, пожалуйста, ее из своего индекса и передайте вес новому документу».
  • Canonical — «У меня имеется несколько версий содержания страницы. Просканируйте, пожалуйста, приоритетную для меня копию, которую я пометил canonical. Остальные материалы тоже будут доступны пользователям, но индексировать их не нужно».

Когда лучше применить 301 редирект:

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

Случаи использования rel=«canonical»:

  • если статья имеет нужные посетителям дубли, например, описания
  • одной и той же продукции, но разного цвета;
  • когда постоянное перенаправление реализовать трудно;
  • для кросс-доменов с похожими статьями;
  • при разных адресах одного контента (сортировка каталога).

Где настраивается 301 редирект?

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

.htaccess, или httpd.conf для Apache

Это популярный благодаря своей простоте метод, для осуществления которого надо создать файл под названием .htaccess в папке сайта. Или отредактировать, если он уже предусмотрен движком.

Важно! Перед любыми изменениями сделайте Backup редактируемого файла (или всего сайта)

Для постоянного перенаправления пропишите в начало файла, подставив свои данные:

  • Редирект всего сайта на другой адрес:

301 Редирект .htaccess

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

Будьте, пожалуйста, внимательны при редактировании файла .htaccess! При сохранении такого файла в кодировке UTF-8 в нём не должно присутствовать BOM-сигнатуры. Для редактирования файла .htaccess и других конфигурационных файлов мы рекомендуем использовать не «Блокнот» Windows, а специальные текстовые редакторы, например Notepad++.

Файл .htaccess располагается в корне сайта.

Его действия распространяются на текущий каталог и на все вложенные каталоги. Т.е. у владельцев сайтов есть возможность воздействовать только на работу своего проекта, не мешая работе всего сервера. Если этот файл отсутствует, то его можно создать с помощью любого блокнота. Главное, чтобы название файла было «.htaccess» — без форматов .txt, .doc и т.д.

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

Чуть ниже мы рассмотрим все распространенные варианты редиректов через .htaccess, а для начала ознакомимся с опциями и правилами.

Чтобы иметь возможность работать с редиректами нужно включить модуль ReWriteEngine . Для этого необходимо прописать две строчки кода (желательно в самом верху файла .htaccess):

Options +FollowSymLinks
RewriteEngine On

Разместите эти строки в самом верху файла .htaccess, чтобы иметь возможность работать с директивами модуля mod_write.

Также на хостинге должны быть включены модули mod_alias (для поддержки Redirect, RedirectPermanent и RedirectMatch).

Правила настройки Redirect, RewriteRule и RewriteCond

Директива Redirect в htaccess

Redirect [status] /откуда http://куда_полный_адрес

Redirect устанавливает прямой редирект с одной страницы на другую.

В status пишут код редиректа. Является необязательным параметром. Чаще всего пишут 301, что сигнализирует о постоянном смене адреса страницы.

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

Redirect 301 /oldpage.php https://htaccess.ru/newpage.php

Можно также писать по другому

RedirectPermanent 301 /oldpage.php https://htaccess.ru/newpage.php или

Redirect permanent 301 /oldpage.php https://htaccess.ru/newpage.php

Директива RewriteRule

Директива RewriteRule устанавливает правила перехода. Синтаксис следующий:

RewriteRule Шаблон Подстановка [коды]

  • При внешнем редиректе меняется урл адреса в строке браузера — «[R=301,L]»
  • При внутреннем — не меняет урл адреса в строке браузера — «[R=301]» или «[L]»

Директива RewriteCond

Директива RewriteCond определяет условия при котором выполняется правила в RewriteRule.

RewriteCond Сравниваемая_Строка Условие

Например, этими условиями могут быть браузер пользователя, IP-адрес, заголовок и т.д.

Директива RedirectMatch

Директива RedirectMatch в htaccess аналогична Redirect с той лишь разницей, что позволяет записывать регулярные выражения.

RedirectMatch [status] Откуда Куда

Примеры настройки 301 редиректов в htaccess

Ниже даны наиболее используемые правила настройки файла .htaccess для 301-редиректа. Лучше размещать все правила после двух строк:

Options +FollowSymLinks
RewriteEngine On

Комментарий в файле htaccess обозначается символом решётка «#» в начале строки

# Текстовый комментарий, данная строчка не будет обрабатываться.

301-редирект с домена без WWW на домен с WWW префиксом

RewriteCond % ^site\.ru$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]

С домена с WWW префиксом на без

RewriteCond % ^www.site\.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]

Для HTTPS-версии:

RewriteCond % ^80$ [OR]
RewriteCond % =on
RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

Стандартный 301-редирект с одной статической страницы на другую

Redirect 301 /was.php http://www.site.ru/new.php

При этом в файле htaccess, новый адрес указывать необходимо полностью с http и доменным именем.

В ряде случаев полезен редирект через RewriteRule

RewriteRule ^dir /dir-new/$1 [R=301,L]

Настройка 301-редирект для страницы с GET параметрами

Скажем, адрес страницы имеет вид: http://www.htaccess.ru/dir/index.php?IBLOCK_ >

RewriteCond % ^IBLOCK_ >
RewriteRule ^dir/index\.php$ /new/sef/? [R=301,L]

Если один (или несколько) из GET параметров не задан(ы) или может иметь произвольное значение (в нашем примере это SECTION_ID), можно использовать следующий код:

RewriteCond % ^IBLOCK_ >
RewriteRule ^dir/index\.php$ /new/sef/? [R=301,L]

Убираем все GET-параметры после знака вопроса (?)

RewriteRule (.*) $1? [R=301,L]

Располагать после: RewriteBase /

301-редирект со страницы без заданного параметра в корень

Если адрес имеет следующий вид: http://www.htaccess.ru/?abc то для редиректа подойдет последовательность строчек:

RewriteCond % ^abc$ [NC]
RewriteRule ^$ /? [R=301,L]

301-редирект для конкретного файла, а не целой папки

Если в файле htaccess требуется настроить редирект только для адреса http://www.htaccess.ru/dir/, но при этом чтобы страница http://www.htaccess.ru/dir/index.php?IBLOCK_ >

RewriteRule ^dir/$ http://www.htaccess.ru/new-dir/ [R=301,L]

Как быть с доменами в зоне РФ?

Для доменов в зоне РФ действуют все те же правила, но только все кириллические символы необходимо заменить на альтернативный код (он на латинице). В частности, сама зона .рф преобразуется в .xn--p1ai.

301-редирект с домена на домен

RewriteCond % ^old-site\.ru$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]

И для домена в зоне РФ:

RewriteCond % ^xn-. \.xn--p1ai$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]

Настройка редиректа на папки со слешем в конце /

Настройка редиректа на папки без слеша (убираем слеш в конце)

301-редирект с домена на папку на другом домене

RewriteCond % ^si-te\.ru$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/si-te/ [R=301,L]

Редирект со всех файлов домена, кроме папки администратора bitrix

RewriteRule ^bitrix/ /bitrix/admin/ [L,R=301]
RewriteRule ^(.*)$ http://www.newsite.ru/new/ [L,R=301]

Редирект всех файлов в папке на заданный файл

RewriteRule ^dir(.*)$ /new-file.php [L,R=301]

Редирект файлов из заданной папки кроме, определенного файла

RewriteRule ^dir/no-file.html /no-file-new.html [L,R=301]
RewriteRule ^dir(.*)$ /all.php [L,R=301]

Смена страниц с html расширения на php расширение

RedirectMatch 301 (.*)\.html$ http://www.new-site.ru$1.php

Перенос картинок / изображений из папки /img/ на поддомен

RewriteRule ^img/(.+)\.jpg$ http://img.domain.ru/$1.jpg [R=301,L]

Задание типа индексной страницы (php, html, htm и другие)

Указывается порядок загрузки типов индексного файла, лежащих в корне каталога.

DirectoryIndex index.html index.php index.htm index.shtml

Редирект с индексной страницы php на саму папку (корень)

RewriteCond % ^[A-Z]<3,9>\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.site.ru/ [R=301,L]

Для всех индексных страниц на сайте:
RewriteRule ^(.*)index\.php$ http://www.site.ru/$1 [R=301,L]

Редирект с поддомена на основной домен второго уровня

RewriteCond % ^test.site.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru% [R=301,NC,L,QSA]

Редирект для заданного файла в различных директориях (папках)

RewriteRule [^abc]/unique-file.html /unique-file.html [R=301,L]

Код позволяет поставить 301-редирект со всех папок вида http://htaccess.ru/***/uniqe-file.html на один файл в корне /unique-file.html. Бывает полезен при переделке сайта и изменении ссылок.

Если требуется создать ЧПУ-копию какой-либо динамической страницы, то это можно также реализовать с помощью .htaccess.

RewriteRule ^testovyi/test/?$ /studio/news/detail.php? >

Код позволяет создать копию страницы с относительным адресом /studio/news/detail.php? >

301-редирект с HTTPS-версии на HTTP

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

Перенос сайта на версию с HTTPS (для всех страниц)

RewriteCond % ^80$ [OR]
RewriteCond % =on
RewriteRule ^(.*)$ https://htaccess.ru/$1 [R=301,L]

Настройка 403 кода ответа сервера для реф-спама (301-редирект для спама по REFERER) для списка ресурсов

RewriteCond % ref-spam-site.ru [NC,OR]
RewriteCond % another-ref-spam.ru [NC]
RewriteRule .* — [F]

Настройка позволяет отклонить спамный реферальный трафик с ряда ресурсов по заголовку HTTP_REFERER.

Указание пути к файлу 404 ошибки с помощью .htaccess

Внимание, важно чтобы код ответа сервера для 404 ошибки был именно 404. Путь к файлу указывается с помощью следующей строчки:

ErrorDocument 404 /404-for-me.php

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

! Для сайтов, на которых используется не сервер Apache, аналогичные 301-редиректы легко настраиваются с помощью PHP.

header(«HTTP/1.1 301 Moved Permanently»);
header(«Location: http://www.htaccess.ru/dir/»);
exit();
?>

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

Если требуется настроить редирект только для некоторых USER_AGENT’ов, а не для всех пользователей

RewriteCond % (iPad|ipad|iphone|iPhone|ipod|iPod|android|midp|j2me|symbian|series\ 60|symbos|windows\ mobile|windows\ ce|ppc|smartphone|blackberry|mtk|bada|windows\ phone) [NC]
RewriteRule (.*) http://mobile.htaccess.ru/ [L,R=301]

Если требуется настроить редирект для всех поисковых роботов (представлен список их USER_AGENT’ов)

RewriteCond % !(accoona|ia_archiver|antabot|ask\ jeeves|baidu|dcpbot |eltaindexer|feedfetcher|gamespy|gigabot|googlebot |gsa-crawler|grub-client|gulper|slurp|mihalism|msnbot|worldindexer |ooyyo|pagebull|scooter|w3c_validator|jigsaw|webalta|yahoofeedseeker |yahoo!\ slurp|mmcrawler|yandexbot|yandeximages |yandexvideo|yandexmedia|yandexblogs|yandexaddurl|yandexfavicons |yandexdirect|yandexmetrika|yandexcatalog|yandexnews |yandeximageresizer) [NC]
RewriteRule (.*) http://no-search.site.ru/ [L,R=301]

Несколько простых редиректов

Редирект с www.htaccess.ru/component/content/?view=featured на www.htaccess.ru/

RewriteCond % ^view=featured$ [NC]
RewriteRule ^component/content/$ /? [R=301,L]

Редирект с www.htaccess.ru/index.php? >

RewriteCond % ^ >
RewriteRule ^index\.php$ /? [R=301,L]

Синтаксис для регулярных выражений файла htaccess

. — Точка заменяет произвольный символ.
[abc] — обозначает перечень символов, совпадающих с буквами a, b, или с.
[^abc] — перечень символов, которые не входят в указанных диапазон. Совпадёт с любым символом, кроме a, b, или с.
* — означает, что предшествующий символ может повторяться (0 или более раз).
[abc]* — команда найдёт идущие подряд символы из заданного набора.
[^abc]* — с точностью до наоборот.

.* — заменяет абсолютно любой набор символов. «.*» — найдёт все подстроки между кавычками.
^ — начало строки (в том случае, если используется в начале выражения).
$ — обозначает конец строки.

\w — буква, цифра или подчёркивание _.
\d — заменяет любую цифру.
\D — заменяет любой символ, но не цифру.
[0-9] — заменяет любую цифру.
[a-z] — любая буква от a до z (весь латинский набор символов) в нижнем регистре.
[A-Z] — любая буква от A до Z в ВЕРХНЕМ регистре.
[a-zA-Z] — любая буква от a до Z в любом регистре.
[a-Z] — то же самое.

19 полезных возможностей файла .htaccess

Спорим, о некоторых вы не подозревали. Мы собрали варианты применения .htaccess для улучшения работы сайта. Он часто используется оптимизаторами для корректной настройки 301 редиректов. Но этим возможности файла не ограничиваются. Тут и безопасность, и оптимизация, и параметры отображения — с помощью .htaccess вебмастер может сделать много полезного, чтобы сайт работал корректно.

Файл .htaccess (сокращение от «hypertext access») переопределяет настройки самого популярного типа веб-серверов Apache и его аналогов. Ниже — способы применения .htaccess для разных целей с примерами кода.

Зачем нужен .htaccess и где его искать

Файл нужен для более гибкой настройки сервера под задачи оптимизатора. Задавать правила в .htaccess не стоит, если у вас есть доступ к главному конфигурационному файлу сервера .httpd.conf или apache.conf (название зависит от настроек операционной системы). Изменения в нем вступают в силу быстрее, запросы не перегружают сервер. Однако очень часто такого доступа нет, например, в случае с виртуальным хостингом. Тогда приходится прописывать нужные настройки через .htaccess.

Возможности .htaccess для оптимизации сайта:

  • Настройка редиректов для SEO.
  • Обеспечение безопасности ресурса в целом и отдельных разделов.
  • Настройка корректного отображения сайта.
  • Оптимизация скорости загрузки.

Где искать и как редактировать

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

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

Некоторые CMS дают возможность редактировать файл через административную панель. В Битриксе его легко можно найти в разделе Контент — Файлы и папки:

В WordPress редактировать .htaccess можно с помощью модулей плагинов Yoast SEO и All in One SEO Pack.

Если файл .htaccess отсутствует, создайте его в текстовом редакторе и разместите в корневой папке сайта или в нужном каталоге (потребуется доступ к хостингу или по ftp).

Синтаксис .htaccess

Синтаксис файла простой: каждая директива (команда) начинается с новой строки, после знака # можно добавлять комментарии, которые не будут учитываться сервером. Изменения на сайте вступают в силу сразу, перезагрузка сервера не требуется.

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

Основные спецсимволы:

Основные переменные:

Для тех, кто хочет основательно погрузиться в тему, — полная официальная документация по использованию .htaccess или хороший ресурс на русском. А мы пройдемся по основным возможностям файла для оптимизации вашего сайта.

Настраиваем редиректы для SEO

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

При настройке 301 редиректов помните о двух правилах:

1. Настраиваем постраничные 301 редиректы

Это потребуется в следующих случаях:

  • изменилась структура сайта и у страницы поменялся уровень вложенности;
  • страница перестала существовать, но нужно сохранить ее входящий трафик (например, в случае отсутствия товара обычно делают переадресацию на товарную категорию);
  • поменялся URL, что крайне нежелательно, но тоже встречается.

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

  • /page1/ — адрес страницы от корня, без протокола и домена. Например, /catalog/ofisnaya-mebel/kompjuternye-stoly/ .
  • https://mysite.com/page2/ — полный адрес страницы перенаправления, включая протокол и домен. Например, https://dom-mebeli.com/ofisnaya-mebel/stoly-v-ofis/ .

2. Избавляемся от дублей

Каждая страница сайта должна быть доступна только по одному адресу. Для этого должны быть настроены:

  • редирект на страницы со слешем в конце URL или наоборот;
  • главное зеркало — основной адрес сайта в поиске.

Сделать это можно при помощи модуля mod_rewrite . В его составе используются специальные команды — директивы сложного перенаправления. Первой командой всегда идет включение преобразования URL:

Переадресация на слеш или наоборот

Настроить ли переадресацию на страницы со слешем или без, в каждом случае нужно решать индивидуально. Если у сайта уже накоплена история в поиске, анализируйте, каких страниц в индексе больше. Для новых сайтов обычно настраивают редирект на слеш. Проверить, не настроена ли переадресация по умолчанию, просто: удалите/добавьте слеш в конце URL. Если страница перезагрузится с новым адресом — мы имеем дубли, требуется настройка. Если URL подменяется — все в порядке. Проверять лучше несколько уровней вложенности.

Код 301 редиректа на слеш:

Код 301 редиректа на страницы без слеша:

3. Настраиваем главное зеркало

Для начала нужно определиться, какой адрес будет являться основным для поиска. SSL-сертификат давно уже мастхэв. Просто установите его и добавьте правило в .htaccess. Не забудьте также прописать его в robots.txt.

Редирект на HTTPS

Определять, с «www» или без будет главное зеркало, можно несколькими способами:

  • добавить сайт в Яндекс.Вебмастер в двух вариантах, в консоли отобразится информация, какой URL поисковик считает главным зеркалом;
  • проанализировать выдачу и посмотреть, каких страниц сайта больше в индексе;
  • для нового ресурса не имеет значения, с «www» или без будет адрес, выбор за вами.

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


Редирект с www на без www

Редирект с без www на www

4. Перенаправляем с одного домена на другой

Самая очевидная причина настройки этого редиректа — переадресовать роботов и пользователей на другой адрес при переезде сайта на новый домен. Также им пользуются оптимизаторы для манипуляций ссылочной массой, но дроп-домены и PBN — серые технологии продвижения, которые в рамках этого материала мы затрагивать не будем.

Воспользуйтесь одним из вариантов кода:

или

Не забудьте поменять в коде «mysite1» и «mysite2» на старый и новый домен соответственно.

Модуль SEO в системе Promopult: для тех, кто не хочет тонуть в рутине. Все инструменты для улучшения качества сайта и поискового продвижения, автоматизация процессов, чек-листы, подробные отчеты.

Обеспечиваем безопасность сайта

Файл .htaccess предоставляет большие возможности для защиты сайта от вредоносных скриптов, кражи контента, DOS-атак. Также можно защитить доступ к определенным файлам и разделам.

5. Запрещаем загрузку картинок с вашего сайта

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

Осадите воришек при помощи этого кода:

Заменяете «mysite.com» на адрес вашего сайта и создаете изображение с любым сообщением о том, что красть чужие картинки нехорошо, по адресу https://mysite.com/img/goaway.gif . Это изображение и будет показано на стороннем ресурсе.

6. Запрещаем доступ

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

Топ-пост этого месяца:  Настройка JFusion для для объединения форума SMF и Джумла-сайта

Для нежелательных User Agents (ботов)

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

Частный случай такого запрета — запрет для поисковых роботов. Если вас почему-то не устраивает правило в robots.txt, можно запретить доступ, например, роботу Google при помощи таких директив:

Для всех, кроме указанных IP

Не забываем заменить «https://mysite.com» на адрес вашего сайта и вписать IP-адреса вместо IP1, IP2 и т.д.

Для определенных IP-адресов

Для подсети

Вписываем маску сети в строку после «deny from».

Спамные IP-адреса можно вычислить в логах сервера или с помощью сервисов статистики. В административной панели WordPress отображаются IP-адреса комментаторов:

К определенному файлу

Вписываем название файла вместо «myfile.html» в примере. Пользователю будет показана ошибка 403 — «доступ запрещен».

Не лишним будет ограничить доступ к самому файлу .htaccess из соображений безопасности, а также рекомендуем после настройки всех правил поставить на файл права доступа 444.

Для сайтов на WordPress важно ограничить доступ к файлу wp-config.php, т.к. в нем содержится информация о базе данных:

Для пользователей, пришедших с определенного сайта

Вы можете заблокировать посетителей с нежелательных ресурсов (например, со взрослым или шокирующим контентом).

7. Защищаем доступ к определенному файлу или папке

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

Защита паролем файла

Защита паролем папки

Вместо «/pub/home/.htpasswd» укажите путь до файла .htpasswd от корня сервера. Рекомендуем проверить доступ после установки кода.

8. Запрещаем выполнение вредоносных скриптов

Следующая группа директив защищает сайт от так называемых «скриптовых инъекций» — инструмента хакерских атак:

Все попытки причинить вред вашему ресурсу будут перенаправлены на страницу ошибки 403 «доступ запрещен».

9. Защищаем сайт от DOS-атак

Один из способов защиты — ограничить максимально допустимый размер запроса (ограничение отсутствует по умолчанию).

Для этого прописываем в .htaccess размер загружаемых файлов в байтах:

В примере указан размер 10 Мбайт. Если вы хотите запретить загрузку файлов, пропишите число меньше 1 Мбайт (1048576 байт).

Также можно изучить возможности директив LimitRequestFields, LimitRequestFieldSize и LimitRequestLine в официальной документации.

Настраиваем отображение сайта

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

10. Заменяем индексный файл

Индексный файл — тот, что открывается по умолчанию при обращении к определенному каталогу. Обычно они называются: index.html, index.htm, index.php, index.phtml, index.shtml, default.htm, default.html.

Вот как это выглядит в структуре каталога:

Чтобы заменить этот файл на любой другой, размещаете в каталоге .htaccess и добавляете эту команду:

Вместо «hello.html» вписывайте адрес желаемого файла.

Можно задать последовательность файлов, которые будут открываться в указанном порядке, если один из них будет недоступен:

11. Добавляем или убираем html в конце URL

Сохранять или убирать расширение файлов в URL — дело вкуса каждого оптимизатора. Достоверных исследований влияния расширений в адресах на ранжирование ресурса нет, но каждый вебмастер имеет свое мнение по этому поводу.

Чтобы добавить .html:

Чтобы убрать .html:

Этими же директивами можно добавить/убрать расширение php.

12. Настраиваем кодировку

Чтобы избежать ошибок в отображении ресурса браузером, нужно сообщить ему, в какой кодировке создан сайт. Самые популярные:

  • UTF-8 — универсальная
  • Windows-1251 — кириллица
  • Windows-1250 — для Центральной Европы
  • Windows-1252 — для Западной Европы
  • KOI8-R — кириллица (КОИ8-Р)

Чаще всего используют UTF-8 и Windows-1251.

Если кодировка не указана в метатеге каждой страницы, можно задать ее через .htaccess.

Пример директивы, которая задает для файла кодировку UTF-8:

А такая команда означает, что все загружаемые на сервер файлы будут преобразованы в Windows-1251:

В примерах приведены разные кодировки, но в рамках одного сайта кодировки в этих директивах должны совпадать.

13. Создаем кастомные страницы ошибок

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

Перед тем, как прописывать директивы, создайте в корне сайта папку error и разместите туда соответствующие файлы для страниц ошибок.

Зачем это нужно? Например, чтобы не потерять пользователя на странице 404, а дать ему возможность перейти в другие разделы сайта:

Оптимизируем работу сайта

Скорость загрузки сайта — один из факторов ранжирования в поисковых системах. Увеличить ее можно в том числе с помощью директив в .htaccess.

14. Сжимаем компоненты сайта при помощи mod_gzip или mod_deflate

Сжатие файлов, с одной стороны, увеличивает скорость загрузки сайта, но с другой — больше нагружает сервер. В .htaccess можно включить сжатие при помощи двух модулей — mod_zip и mod_deflate. Они практически идентичны по качеству сжатия.

Синтаксис модуля Gzip более гибкий и он умеет работать с масками:

В mod_deflate вы перечисляете типы файлов, которые нужно сжать:

15. Усиливаем кэширование

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

В примере срок жизни кэша ограничен одной неделей («1 week»), вы можете указать свой срок в месяцах (month), годах (year), часах (hours) и т.д.

Другой вариант кода:

Для кэширования доступны следующие типы файлов:

  • image/x-icon;
  • image/jpeg;
  • image/png;
  • image/gif;
  • application/x-shockwave-flash;
  • text/css;
  • text/javascript;
  • application/javascript;
  • application/x-javascript;
  • text/html;
  • application/xhtml+xml.

Еще несколько возможностей

16. Управляем настройками php

Этот комплекс настроек выполняют программисты, если нет доступа к файлу php.ini. Остановимся на выражениях php_value, которые отвечают за объем загружаемых на сайт данных и время обработки скриптов, т.к. это напрямую влияет на производительность.

В строке «upload_max_filesize» указываете максимальный размер загружаемых файлов в мегабайтах, «post_max_size» означает максимальный объем постинга, «max_execution_time» указывает время в секундах на обработку скриптов.

17. Боремся со спам-комментариями на WordPress

Для того, чтобы перекрыть доступ спамерам к файлу wp-comments-post.php, добавьте эти директивы в .htaccess:

Вместо «mysite.com» впишите адрес вашего сайта.

18. Устанавливаем e-mail для администратора сервера

Этот код в .htaccess установит e-mail администратора по умолчанию. На него будут приходить уведомления, связанные с важными событиями на сервере.

19. Предупреждаем о недоступности сайта

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

IP-адрес в примере (12\.345\.678\.90) замените на свой, в последней строке укажите адрес страницы вашего ресурса с информацией о характере и сроках завершения работ.

Как сделать 301-редирект в файле .htaccess? Примеры и правила настройки

Введение. Правила приведены для сервера Apache. В правилах: % — обозначает фрагмент URL-адреса после знака вопроса (задания значений CGI-параметров). Срабатывание того или иного правила для редиректа определяется тем, попадает URL-адрес страницы под это правило или нет. О значении тех или иных обозначений (^, $, NC и т.д.) см. памятку в конце страницы.

Проверка кода ответа. Быстрая и бесплатная проверка кодов ответа для списка URL в режиме онлайн реализована в рамках комплекса инструментов «Пиксель Тулс», предусмотрено удобное цветовое кодирование и загрузка URL файлом.

Анализ проведён с помощью инструментов в сервисе Пиксель Тулс.

Ниже даны наиболее используемые правила настройки файла .htaccess для 301-редиректа. Лучше размещать все правила после двух строк:

Options +FollowSymLinks
RewriteEngine On

# Текстовый комментарий, данная строчка не будет обрабатываться.

RewriteCond % ^site\.ru$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]

RewriteCond % ^www.site\.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]

RewriteCond % ^80$ [OR]
RewriteCond % =on
RewriteRule ^(.*)$ https://pixelplus.ru/$1 [R=301,L]

Redirect 301 /was.php http://www.site.ru/new.php

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

RewriteRule ^dir /dir-new/$1 [R=301,L]

Скажем, адрес страницы имеет вид: http://www.site.ru/dir/index.php?IBLOCK_ >

RewriteCond % ^IBLOCK_ > RewriteRule ^dir/index\.php$ /new/sef/? [R=301,L]

Если один (или несколько) из GET параметров не задан(ы) или может иметь произвольное значение (в нашем примере это SECTION_ID), можно использовать следующий код:

RewriteCond % ^IBLOCK_ > RewriteRule ^dir/index\.php$ /new/sef/? [R=301,L]

Если адрес имеет следующий вид: http://www.site.ru/?abc то для перенаправления подойдет последовательность строчек:

RewriteCond % ^abc$ [NC]
RewriteRule ^$ /? [R=301,L]

Если требуется настроить переадресацию только для адреса http://www.site.ru/dir/, но при этом чтобы страница http://www.site.ru/dir/index.php?IBLOCK_ >

RewriteRule ^dir/$ http://www.site.ru/new-dir/ [R=301,L]

Для доменов в зоне РФ действуют все те же правила, но только все кириллические символы необходимо заменить на альтернативный код (он на латинице). В частности, сама зона .рф преобразуется в .xn--p1ai.

RewriteCond % ^old-site\.ru$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]

И для домена в зоне РФ:

RewriteCond % ^xn-. \.xn--p1ai$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]

RewriteCond % ^si-te\.ru$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/si-te/ [R=301,L]

RewriteRule ^bitrix/ /bitrix/admin/ [L,R=301]
RewriteRule ^(.*)$ http://www.newsite.ru/new/ [L,R=301]

RewriteRule ^dir(.*)$ /new-file.php [L,R=301]

RewriteRule ^dir/no-file.html /no-file-new.html [L,R=301]
RewriteRule ^dir(.*)$ /all.php [L,R=301]

RedirectMatch 301 (.*)\.html$ http://www.new-site.ru$1.php

RewriteRule ^img/(.+)\.jpg$ http://img.domain.ru/$1.jpg [R=301,L]

Указывается порядок загрузки типов индексного файла, лежащих в корне каталога.

DirectoryIndex index.html index.php index.htm index.shtml

RewriteCond % ^[A-Z]<3,9>\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.site.ru/ [R=301,L]

Для всех индексных страниц на сайте:
RewriteRule ^(.*)index\.php$ http://www.site.ru/$1 [R=301,L]

RewriteCond % ^test.site.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru% [R=301,NC,L,QSA]

RewriteRule [^abc]/unique-file.html /unique-file.html [R=301,L]

Код позволяет поставить 301-редирект со всех папок вида http://site.ru/***/uniqe-file.html на один файл в корне /unique-file.html. Бывает полезен при переделке сайта и изменении ссылок.

RewriteRule ^testovyi/test/?$ /studio/news/detail.php? >Код позволяет создать копию страницы с относительным адресом /studio/news/detail.php? >

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

RewriteCond % ^80$ [OR]
RewriteCond % =on
RewriteRule ^(.*)$ https://domain.ru/$1 [R=301,L]

RewriteCond % ref-spam-site.ru [NC,OR]
RewriteCond % another-ref-spam.ru [NC]
RewriteRule .* — [F]

Настройка позволяет отклонить спамный реферальный трафик с ряда ресурсов по заголовку HTTP_REFERER.

Внимание, важно чтобы код ответа сервера для 404 ошибки был именно 404. Путь к файлу указывается с помощью следующей строчки:

ErrorDocument 404 /404-for-me.php

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

! Для сайтов, на которых используется не сервер Apache, аналогичные 301-редиректы легко настраиваются с помощью PHP.

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

RewriteCond % (iPad|ipad|iphone|iPhone|ipod|iPod|android|midp|j2me|symbian|series\ 60|symbos|windows\ mobile|windows\ ce|ppc|smartphone|blackberry|mtk|bada|windows\ phone) [NC]
RewriteRule (.*) http://mobile.site.ru/ [L,R=301]

RewriteCond % !(accoona|ia_archiver|antabot|ask\ jeeves|baidu|dcpbot |eltaindexer|feedfetcher|gamespy|gigabot|googlebot |gsa-crawler|grub-client|gulper|slurp|mihalism|msnbot|worldindexer |ooyyo|pagebull|scooter|w3c_validator|jigsaw|webalta|yahoofeedseeker |yahoo!\ slurp|mmcrawler|yandexbot|yandeximages |yandexvideo|yandexmedia|yandexblogs|yandexaddurl|yandexfavicons |yandexdirect|yandexmetrika|yandexcatalog|yandexnews |yandeximageresizer) [NC]
RewriteRule (.*) http://no-search.site.ru/ [L,R=301]

Переадресация с www.site.ru/component/content/?view=featured на www.site.ru/
RewriteCond % ^view=featured$ [NC]
RewriteRule ^component/content/$ /? [R=301,L]

Переадресация с www.site.ru/index.php? > RewriteCond % ^ > RewriteRule ^index\.php$ /? [R=301,L]

. — Точка заменяет произвольный символ.
[abc] — обозначает перечень символов, совпадающих с буквами a, b, или с.
[^abc] — перечень символов, которые не входят в указанных диапазон. Совпадёт с любым символом, кроме a, b, или с.
* — означает, что предшествующий символ может повторяться (0 или более раз).
[abc]* — команда найдёт идущие подряд символы из заданного набора.
[^abc]* — с точностью до наоборот.

.* — заменяет абсолютно любой набор символов. «.*» — найдёт все подстроки между кавычками.
^ — начало строки (в том случае, если используется в начале выражения).
$ — обозначает конец строки.

\w — буква, цифра или подчёркивание _.
\d — заменяет любую цифру.
\D — заменяет любой символ, но не цифру.
[0-9] — заменяет любую цифру.
[a-z] — любая буква от a до z (весь латинский набор символов) в нижнем регистре.
[A-Z] — любая буква от A до Z в ВЕРХНЕМ регистре.
[a-zA-Z] — любая буква от a до Z в любом регистре.
[a-Z] — то же самое.

RewriteRule (.*) $1? [R=301,L]
Располагать после: RewriteBase /

Памятка по используемым символам и обозначениям

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

Спецсимволы, используемые в правилах и их значения.

  • ^ — спецсимвол начала строки;
  • $ — спецсимвол конца строки;
  • ! — спецсимвол отрицания;
  • . — точка, заменяет любой символ, но только один;
  • () — группировка;
  • \ — «экранирующий» слеш, следующий символ после него считается обычным, а не спецсимволом;
  • # — начало текстового комментария в файле.

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

  • ? — символ повторяется 0 или 1 раз.
  • + — повторяется от 1 до 65536 раз.
  • * — повторяется от 0 до 65536 раз.

Флаги, задают доп. опции для используемого правила. Перечисляются в квадратных скобках через запятую, скажем [NC] или [R=301,L].

  • NC — флаг NoCase, отключающий проверку регистра символов при срабатывании правила.
  • R — флаг Redirect, производит процесс остановки изменения URL-адреса и возвращает результат. Чаще всего используется значение R=301, но возможны и другие для временных перенаправлений (302, MOVED TEMPORARY).
  • L — флаг Last, останавливает формирования URL-адреса и строка считается окончательной.

Http коды ответа сервера, 301 и 302 редиректы и файл htaccess — простыми словами о том, что мешает раскрутке вашего сайта

You are using an outdated browser. Please upgrade your browser.

By signing up, you agree to our Terms of Service and Privacy Policy.

В данной статье я рассмотрю основные отличия между 301 и 302 redirect и их особенности. Каждый опытный веб-специалист должен обладать этой информацией и знать когда и как применять эти редиректы. Зачем использовать 301 redirect?

Встречаются случаи, что можно использовать оба редиректы. Но наиболее часто там, где подходит редирект 301, 302 нет необходимости применять, да и он там будет вообще неуместен. Хотя redirect 301 и 302 очень похожи между собой, seo оптимизация интернет-ресурса может пойти совсем неправильным путем, если не вникнуть в особенности использования и применения каждого из них.

302 редирект – это временное перенаправление на другой адрес. Он имеет в виду возврат к старому варианту в будущем вне зависимости от времени.

Какие основные отличия между 301 и 302 редиректом , рассмотрю по пунктам:

  • В прошлом году представителем компании Google было заявлено, что для Google не важно то, какой код ответа сервера используют для перенаправления — 301/302/307. Все они передают PageRank странице, на которую ведут. Также было заявлено, что все 300-ые редиректы передают PageRank. Более детально об этом в предыдущей статье . Поэтому если ранее считалось, что при использовании 302 редиректа «пузомерки» и ссылочный вес не передаются новому URL, то сегодня это утверждение уже не имеет смысла.
  • Существует отличие между 301 и 302 редирект в восприятии исходной страницы ботами поисковых систем . 301 дает сигнал поисковику, что про старую страницу можно забыть и больше никогда на нее заходить, а 302 – знак, что необходимо продолжать индексировать ее размещенную информацию, вне зависимости от того, сколько будет продолжаться перенаправление.
  • Редиректы имеют разное влияние на поисковую выдачу . Эти различия будут иметь отношение к прекращению отображения старой страницы в результатах поиска (в случае 301-го) или же присутствия в них обоих страниц (в случае 302-го).
  • Существует также разница в риске попадания под фильтры поисковиков при использовании 301 и 302 редиректа . 301-ое перенаправление обычно наказывают в случае целенаправленных проделок в склеивании показателей и веса разных сайтов. А 302-й может быть распознан как элемент черного SEO, а именно разновидность “клоакинга”.
  • При настройке 301:
    RewriteCond % ^/test/$
    RewriteRule ^.*$ http://domain.com/new-test/? [R=301,L]
  • При настройке 302 redirect используются:
    RewriteEngine On
    RewriteCond % ^www.domain.com [NC]
    RewriteRule ^(.*)$ http://domain.com /$1 [R=302,L]

В каких случаях выбирают 302-ое перенаправление:

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

Общие правила работы с редиректами

  1. Абсолютно все виды редиректов несут определенную степень риска для SEO.
  2. Как правило 3xx редиректы сохраняют PageRank, 301 редирект больше метод для настройки постоянной переадресации.
  3. Если вы приобретете интернет-ресурс для того, чтобы перенаправить 1000 страниц на свою главную страницу, вы, понятное дело, не заметите значительного роста трафика.
  4. Наиболее полезный редирект – это тот, что ведет на страницу с теме же сохраненными элементами, что и старая страница, не считая URL.
  5. Переход на HTTPS безопасный и сохраняет PageRank, но кроме него есть и другие факторы, негативно влияющие на трафик и ранжирование Вашего сайта.

Когда следует использовать редиректы в целом?

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

Когда нет необходимости в применении редиректов?

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

Если Вы переезжаете из-за проблем со старым доменом (баны, фильтры и штрафы), то в случае склейки к вам перейдет не только ТИЦ и PR, но и проблемы со старого домена на новый.

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

Как сделать 301 редирект в файле .htaccess подробные примеры

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

Редирект 301 Permanent Redirect — это одно из основных правил, которые необходимо прописывать в .htaccess. Основная задача 301 Redirecta, переадресация пользователя на прописанный в правиле адрес страницы.

Содержание статьи:

Что такое 301 Permanent Redirect и код состояния HTTP 301?

Permanent Redirect 301 — это стандартное обозначение того, что страница или ресурс перемещены на новое местоположение. Таким образом пользователь при посещении одной страницы, перенаправляется на адрес нового ее местонахождения.

Поисковый бот или прочие сторонние боты, получают соответствующий код ответа HTTP 301. Это означает, что страница или полноценный ресурс перемещены навсегда на новый адрес. Соответственно все основные свойства страницы переходят к конечной точке перенаправления. Указывая поисковым системам на необходимость пересмотра всех текущих входящий URL. Для последующего переноса веса на конечную страницу (ресурс).

301 Permanent Redirect в поисковом продвижении и Seo

Все поисковые системы в особенности основные Google и Яндекс полностью поддерживают использование редиректов. Это позволяет указать поисковому роботу, что несколько разных адресов нужно объединить в 1. При этом основным адресом будет только тот на который осуществляется перенаправление.

Для Seo это незаменимый дополнительный инструмент продвижения. К примеру позволяющий указать поисковой системе:

  1. На новый адрес сайта или новый домен. Для последующего переноса всех свойств старого адреса (домена) на новый домен.
  2. Перенаправление с доп. зеркал на основное. Например, когда ресурс доступен по адресам www и без www. Или использует (https), но при этом доступен и по http.

Основные правила использования перенаправления

Во первых — необходимо размещать перенаправления в правиле в правильном порядке. Используйте наиболее частые перенаправления (выше), а наиболее глобальные ниже.

Во вторых — избегайте многократного редиректа. Это крайне негативно скажется на Seo продвижении сайта. Поисковый бот или пользователь в этом случае, будет переадресован несколько раз. К примеру: с одной страницы, на 2—ю затем на 3—ю. Это плохо и некорректно с точки зрения Seo.

В третьих — старайтесь не делать циклических переадресаций (друг на друга, по кругу). Это негативно скажется на распределение веса между страницами указанными в правиле.

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

Как настроить 301 редирект в файле .htaccess

Сам файл .htaccess располагается в главной директории сайта. Работа с ним ведется крайне осторожно, при любом изменении сохраняйте резервную копию. Одна ошибка в написании правила приведет к непредвиденной ошибке на сайте. Потом будет сложно установить причину банальной ошибки 500 (Internal Server Error). Само редактирование ведется с помощью любого текстового редактора, обязательно с поддержкой кодировки UTF -8 (формат преобразования Юникода).

Основная функция, которая указывает серверу на наличие правил перенаправления устанавливается первой.
Все последующие правила пишутся после нее:

Redirect 301 непосредственно относящийся к доменному имени и сайту в целом

К таким перенаправлениям можно отнести популярные редиректы:

  1. С WWW и обратно — для указания зеркала;
  2. Домена на домен или множества доменов на основной;
  3. С HTTPS на HTTP и обратно, для указания предпочтительной версии;
  4. Непосредственно полный перенос проекта на новый домен;

Это наиболее востребованные глобальные редиректы, которые относятся к доменному имени и сайту. Благодаря таким правилам все переходы и обозначения проходят плавно и безболезненно. Одна из самых востребованных для поискового продвижения. Распространенное перенаправление с домена www на без www. Необходимо для указания главного зеркала поисковым системам.

Пример обратного перенаправления:

Для тех, кто использует HTTPS:

301 — редирект с домена на домен или на домен в зоне РФ.

Осуществляется перенаправление с одного доменного имени на другое.

Для обладателей доменного имени в зоне РФ:

Переход сайта на HTTPS для всех страниц сайта

Таким образом все существующие адреса проекта, будут направлены на новые с префиксом «https».

Обратный переход на HTTP

Возможен если нужно перейти на hhtp, хоть и редко используется.

Полный переезд сайта на новый домен

Классная вещь, которая крайне необходима для переезда сайта на новый домен.

301 — редирект страниц сайта

Порой крайне необходимо осуществить подобную переадресацию. Причин этому может быть множество, особено это касается страниц с ошибкой 404. В большинстве случаев на подобные страницы ведут другие домены. Как мы все понимаем, они передают вес (ТИЦ, PR, ИКС, TRUST), который нам необходим.

Permanent Redirect — позволяет направить несуществующую страницу на необходимую с подобным материалом. Благодаря этому мы сохраним переданные свойства, а пс роботы обновят данные о входящих ссылках. Основным направлением таких правил является:

  1. Указание предпочтительной канонической страницы;
  2. Направление страницы со / (слезшем) на без него;
  3. Указание поисковым ботам на страницу 404;
  4. Предпочтительный раздел или каталог;

Основной редирект — 301 с одной страницы (старой версии) на новую

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

Редирект адресов без / на конце на адреса со / на конце

Помогает убрать нежелательные дубли страниц.

Обратный редирект адресов у которых / в конце, на без него

Также помогает избежать дублей.

Перенаправление всех страниц одного домена на главную другого

Помогает для создания структуры из нескольких доменов (сайтов).

Указываем через .htaccess, путь к файлу 404 ошибки

Крайне необходимая вещь для грамотного поискового продвижения.

Переопределяем каталог или категорию сайта

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

301 редирект для url с GET параметрами

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

Пример адреса: https://nicola.top/page.php? >

Если необходимо убрать все get параметры после знака (?). Можно использовать следующий пример:

301 редирект для urlов с расширениями

Очень хорош, в особенности при некоторых ошибках в url.

Использование PHP для настройки 301-редиректа

Этот метод поможет тем, кто не использует сервер Apache. Аналог правила для php:

Как сделать 301-редирект для сайтов на nginx

И названия понятно, что это перманентный редирект для тех у кого сайт на nginx.

Основной синтаксис регулярных выражений для файла Apache / .htaccess

В данном регулярном выражении можно использовать любые печатные символы и пробел. Тем не менее часть символов имеет особое назначение:

    () — используются для выделения нужных групп символов. ^ — спецсимвол начало строки. $ — спецсимвол конец строки. . — обозначает любой символ. | — обозначает альтернативу. Например, выражения «A|B» и «(ABC|DEF)» означают «A или B» и «ABC или DEF» соответственно. ? — ставится после символа (или группы символов), который может как присутствовать, так и отсутствовать. * — ставят после символа (или группы символов), который может отсутствовать или присутствовать неограниченное число раз подряд. + — действует аналогично символу * с той лишь разницей, что предшествующий ему символ обязательно должен присутствовать хотя бы один раз. [] — используются для перечисления допустимых символов. Внутри скобок можно использовать диапазоны: например, выражение «[0-9]» равносильно выражению «[0123456789]». Если символы внутри квадратных скобок начинаются с символа ^, это означает любой символ, кроме перечисленных в скобках. \ — ставится перед спецсимволами, если они нужны в своем первозданном виде. <3,9>— фигурные скобки означают диапозон количества символов, в данном случае допускается от 3 до 9 символов, длина строки из символов должна быть равна или более 3 равна или менее 9 символов. Все, что расположено после символа ‘#’, считается комментарием.

Плагин Redirection для обладателей сайта на CMS WorPress

Прекрасное решение для детектирования 404 ошибки.Один из самых простых способов перенаправить url. Плагин Redirection — самый популярный менеджер перенаправления для WordPress. С его помощью вы можете легко управлять переадресацией url, отслеживать ошибки 404. Также этот плагин позволяет убирать / в конце url. Это поможет уменьшить количество ошибок и улучшить рейтинг Вашего проекта.

Redirection — позволяет создавать и управлять перенаправлениями

Создает редирект быстро и легко, не требуя знаний Apache или Nginx. Если ваш сайт на WordPress поддерживает постоянные ссылки. Тогда Вы с уверенностью можете использовать этот плагин для перенаправления любого URL-адреса своего сайта. В плагине осуществлена полная поддержка регулярных выражений, поэтому Вы можете создавать шаблоны Permanent Redirect с любым кол-вом URL-адресов.

Можно настроить плагин и для контроля над вашим контентом. Когда произойдет изменение поста или страницы, плагин автоматически создаст нужный редирект на новый URL-адрес. В дополнение к обычному редиректу URL-адресов. У Вас есть возможность перенаправить URL на основе других условий:

    Статус входа — redirect, только если пользователь вошел или вышел из системы. Браузер — redirect, если пользователь использует определенный браузер. Referrer — redirect, если пользователь посетил ссылку с другой страницы. Cookies — redirect, если установлены определенные cookie. HTTP headers — redirect, на основе HTTP-заголовка. Custom filter — redirect, на основе собственного фильтра WordPress.

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

Redirection имеет поддержку APACHE & AMP & NGINX

По умолчанию этот плагин будет управлять всеми редиректами с помощью WordPress. Однако его можно настроить так, чтобы все Redirecty автоматически сохранялись в файле .htaccess и обрабатывались самим Apache. В случае если вы используете Nginx, вы можете экспортировать настройки в файл правил перезаписи Nginx. Плагин также имеет полнофункциональную систему импорта и экспорта:

    Импорт и экспорт в Apache и .htaccess; Экспорт в правила перезаписи Nginx; Копировать редирект между сайтами с помощью JSON; Импорт и экспорт в CSV для просмотра в табличном варианте; Используйте WP CLI для автоматизации.

Плагин Simple 301 Redirects для WordPress

Simple Redirects — это простой способ перенаправления запросов на другую страницу вашего сайта или в другом месте в Интернете. Особенно удобен, если Вы переносите сайт WordPress и не можете сохранить четкую структуру URL. Установив redirects со старых страниц на новые, любые входящие ссылки будут передавать свой стат.вес.

Плагин SEO Redirection Plugin для WordPress

SEO Redirection — это плагин WordPress для управления редиректом. Вам доступно легкое создание и управление редиректами своего сайта. Этот плагин крайне полезен! Особенно если Вам нужно перенести структуру URL, со старого веб-сайта или поменять каталог своего сайта на WordPress.

Что может плагин SEO Redirection:

  1. Ручное добавление редиректов 301, 302 и 307 на WordPress.
  2. Поддерживает Redirect wild card.
  3. Исправлять ошибки сканирования 404 в Google Search Console.
  4. Поддержка WPML и функций импорта / экспорта.
  5. Авто-добавление редиректа при изменении URL.
  6. Прямые редиректы (страниц, публикаций, черновиков) после их изменений.
  7. Расширенная панель управления.
  8. Вы можете перенаправить папки и все их содержимое.
  9. Ведется полный журнал для всех перенаправленных URL-адресов.
  10. Возможно использование регулярных выражений в перенаправлении.
  11. Apache .htaccess не требуется, плагин работает только в WordPress.
  12. Перенаправить index.php, index.html и index.htm.

Перенаправления крайне необходимая вещь в поисковом продвижении. Благодаря Permanent Redirect можно избавиться от дублей , указать основной источник. Достаточно часто R-t используют для переадресации ошибки 404 на другие страницы проекта. В этом руководстве я постарался очень подробно расписать все возможные перенаправления. Максимально задействовав файл .htaccess и доступные плагины для WordPress. Желаю Вам успехов и удачи с Вашими переадресациями.

302 редирект: что это такое и в чем его отличие от 301 редиректа

13 ноября 2020 года. Опубликовано в разделах: Азбука терминов. 10849

Больше видео на нашем канале — изучайте интернет-маркетинг с SEMANTICA

Что такое 302 редирект

Если на сайте создан данный вид переадресации, это значит, что страница временно перемещена на другой адрес. Его недостаток – не передает ссылочный вес страницы. В итоге сайт теряет внешнюю ссылочную массу и внутренний вес страниц, ресурса в целом. 302 редирект полезен как для поисковых систем, так и для людей.

Представьте, что вы разрабатываете с нуля страницу акций со множеством функций. Их внедрять необходимо на протяжении 3-4 дней, время от времени поправляя внешний вид и исходный код документа. Если не использовать переадресацию, пользователи будут видеть недоработанную страницу и все изменения, а поисковые роботы отправят в выдачу первый вариант. 302 редирект позволяет выложить на сайт уже готовую страницу, чтобы она сразу понравилась посетителям, а поисковые роботы отправили в выдачу оптимизированный документ.

Зачем нужен 302 редирект

Необходим в следующих случаях:

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

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

301 и 302 редирект: в чем разница

Эти виды переадресации отличаются по следующим показателям:

  • 301 передает ссылочный вес и показатели сайта новому url.
  • Первый дает поисковым роботам понять, что об исходной странице можно навсегда забыть, второй – не забывать и продолжать индексировать её содержимое.
  • 301 редирект – документ перестает отображаться в поиске, 302 – отображаются два документа.
  • Поисковые системы негативно относятся к второму редиректу. Фильтр может быть наложен в случае его использования более 7 дней подряд.

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

Как настраивать 302 редирект

Код для настройки 302 редиректа с помощью плагина Yoast SEO WordPress. Ниже представлен код в самом плагине

Если у вас есть доступ к веб-серверу Apache, воспользуйтесь первым вариантом — настройка 302 редиректа в .htaccess. Используйте простой способ в две строки, который не создает трудностей для пользователей:

Redirect 302 /old-url https://dh-agency.ru/new-url

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

Пользователь может настроить 302 редирект с помощью плагина Yoast SEO для WordPress

Можно выполнить настройку и в php коде. Для этого открываете функцию заголовки (header) в редакторе сайта и прописываем код в начале страницы. Если вы сделаете это в неправильном месте, система сообщит вам об ошибке.

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

Именно 302 переадресация приводит в восторг вебмастеров. Она отлично выполняет основную функцию, при этом две страницы остаются в поиске. Поисковые роботы лояльно относятся к этой процедуре. Если она в среднем длится в течении 7 дней, никаких фильтров на сайт накладывать не будут.

Специалисты студии SEMANTICA проведут комплексный анализ сайта по следующему плану:

– Технический аудит.
– Оптимизация.
– Коммерческие факторы.
– Внешние факторы.

Мы не просто говорим, в чем проблемы. Мы помогаем их решить

Код ответов сервера.

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

Поисковые роботы, как и посетители, учитывают коды ответов сервера и на их основании корректируют обработку страниц. В частности, по кодам ответа поисковые системы принимают решение о том, что:

– страница существует и работает корректно;

– страница не существует;

– страница перемещена навсегда;

– страница временно перемещена;

– сервер загружен и не может обработать запрос.

Существуют и другие, менее значимые, инструкции.

Описание кода ответа 200.

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

Страница-шлюз может быть удалена или понижена в ранжировании (это зависит от типа редиректа). Если страница отдавала код ответа 200 и попала в индексную базу, но позже была удалена и теперь отдает код 404, она со временем удаляется из индексной базы. Если на странице поставить 301 редирект, то через некоторое время она будет также удалена из индекса, а ее вес в некоторых случаях будет передан той странице, на которую ссылался редирект.

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

Коды ответов 301, 302, 303, 307.

Существует большое количество кодов для обозначения редиректа. Укажем здесь основные, наиболее важные для поисковых систем: 301 “постоянное перенаправление”. Означает, что страница перемещена навсегда. Этот редирект используется чаще всего.

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

302, 303, 307 «временное перенаправление». Веб-мастер таким образом указывает роботу поисковых систем, что страница перемещена временно, а значит, ее не нужно удалять из индексной базы. В этом случае Яндекс может добавить в свою базу обе страницы, но отображать только одну из них в результатах поиска.

Из инструкций Яндекс. Вебмастер: При постоянном перенаправлении (301 код) между внутренними страницами хоста в результатах поиска будет отображаться цель. При временном перенаправлении (302, 303, 307) между внутренними страницами хоста в результатах поиска будет отображаться наиболее компактный URL.

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

Код ответа 404.

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

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

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

Топ-пост этого месяца:  Доступные в OpenCart способы оплаты установка и настройка PayPal и других платежных модулей
Добавить комментарий