- Главная
- Оптимизация сайта в деталях
- Настройка редиректов и статус-кодов
Настройка редиректов и статус-кодов
Коды статуса HTTP
О состоянии страницы говорит код статуса HTTP, который автоматически отдается, когда браузер посетителя или робот поисковой системы запрашивает страницу на сайте. Поисковые роботы по этому коду понимают состояние сайта и конкретной страницы. Например, существует страница или нет, настроена ли переадресация, нет ли на стороне сервера ошибки.
Для работы с сайтом необходимо знать и понимать следующие коды:
200 – сервер успешно открыл страницу; только страницу с таким кодом будут индексировать роботы поисковой системы
301 – перенаправление навсегда, показывающее роботу и посетителю, что запрашиваемой страницы больше не существует, но есть аналогичная, куда и осуществляется редирект
302 – временное перенаправление, означающее, что существующий редирект только на время, например, пока редизайн сайта не закончится
404 – запрашиваемая страница не существует, такая страница для поисковика считается несуществующей и индексироваться она не будет
503 – сервер временно недоступен – проблема на стороне сервера, связанная, например, с нагрузкой сервера, на котором лежит сайт
500 – внутренняя ошибка сервера – возникает, когда сервер сталкивается с некорректностью работы сайта, например, скрипт не отрабатывает правильно или превышены разрешенные права на хостинге
Выделяют пять групп кодов статуса HTTP. Каждая группа начинается с определенной цифры и соответствует определенному состоянию:
- 1xx — информирующие коды, сообщающие о процессе передачи данных.
- 2xx — коды-успешности, информирующие об успешности работы сайта.
- 3xx — редирект-коды, перенаправляющие запрос на другой url.
- 4xx — коды ошибок клиента, сообщающие о невозможности работы сайта на стороне клиента.
- 5xx — коды ошибок сервера, сообщающие о невозможности работы сайта на стороне сервера.
Бывают случаи, когда статус-код отдается некорректно. Например, рабочие страницы отдают код 404, то есть они недоступны, или несуществующие страницы отдают код 200. В этом случае необходимо провести корректную настройку статус-кодов в файле .htaccess.
Еще один способ определить проблемы с 404 ошибкой – это установить на свой компьютер дополнение к браузерам Firefox или Opera, которое называется «Firebug».
Зайдя в этом сервисе во вкладку «Сеть» и перезагрузив страницу, можно посмотреть статус-коды всех подгружаемых элементов, но в первую очередь самой страницы.
Настройка 404 ошибки
Корректная настройка кодов статуса HTTP очень важна для правильной индексации сайта: если страница по ошибке будет отдавать код 404, ее не смогут проиндексировать поисковые роботы, а это отрицательно скажется на продвижении ресурса.
Информацию о наличии страниц с ошибками можно получить также из сервиса webmaster.yandex.ru, настроенного для конкретного сайта.
Рекомендуется проводить проверку статус-кодов для всех страниц сайта. Если найдены страницы с кодами, отличными от 200 ОК, то нужно настроить сервер таким образом, чтобы все страницы с полезным контентом отдавали корректные ответы. Такое ответственное задание стоит поручить разработчикам сайта.
Настройка зеркал сайтов
Еще одна группа возможных ошибок связана с некорректной настройкой зеркал сайта.
Вам могут потребоваться зеркала, чтобы решать самые разные задачи. Например, чтобы обеспечить присутствие в зоне .RU и .РФ (kuvalda.ru и кувалда.рф) или оценить эффективность разных инструментов интернет-маркетинга (сайт в зоне .RU вы будете продвигать с помощью SEO, а на сайт .РФ привлекать аудиторию с помощью контекстной рекламы).
Зеркала — это два идентичных сайта, имеющих разные URL. Однако поисковые системы могут посчитать создание таких сайтов спамными действиями и наложить на них санкции, поэтому следует произвести правильную настройку зеркал, указав среди них основное.
Иногда робот-зеркальщик поисковой системы без дополнительных настроек определяет зеркала, и склейка происходит автоматически. Но, к сожалению, бывают и обратные случаи. Есть риск, что в поисковой системе произойдет сбой, и она потеряет информацию о зеркалах. В таких случаях позиции сайта могут понизиться или прекратить рост. Это происходит из-за того, что ссылочная масса в таком случае учитывается на каждый сайт в отдельности, а наличие дублирующей информации может повлечь пессимизацию и исключение из индекса.
Часто проблемы случаются с настройкой зеркал сайтов с www и без www. Как обнаружить их:
Чтобы провести проверку настройки зеркал с www и без www, необходимо зайти на каждую копию и проанализировать: сайт открывается и по одному адресу, и по другому, или в одном из вариантов происходит перенаправление. Также нужно просмотреть индекс Яндекса и Google на наличие страниц с www и без www. Если они есть, то, скорее всего, настройка зеркал выполнена неверно.
Для корректной настройки зеркал используется, помимо редиректа, директива host в файле robots.txt. Если директива host не прописана в файле robots.txt , то Яндексу и другим поисковым системам не дана информация о главном зеркале, и индексация сайта, скорее всего, пройдет некорректно.
Таким образом, основными этапами настройки зеркал являются:
- настройка 301 редиректа с неосновного зеркала на основное;
- корректировка ссылочной структуры сайта, чтобы исключить наличие на веб-ресурсе ссылки одновременно с неосновного и основного сайта;
- обозначение в директиве host основного сайта, главное зеркало среди множества.
Перенаправления: 301 и 302 редирект
Существует два вида перенаправлений:
301 — «перемещен навсегда». Настройка 301 редиректа используется при смене URL страниц и при склейке сайтов. Прежняя страница выпадает из индекса, но при этом весь заработанный ею вес практически полностью передается на новую страницу, куда сделан редирект.
302 — «перемещен временно». Настройка 302 редиректа используется для временного перенаправления, например, во время редизайна сайта, когда страница еще «сырая», но сайт должен функционировать. При 302 редиректе прежняя страница сохраняется в индексе и ее вес не передается.
Продвигать новую страницу, на которую настроен 302 редирект с прежней страницы, проблематично, поскольку у нее есть копия в сети (прежняя страница, откуда идет 302 редирект) и показатель ссылочной массы нулевой (поскольку вес прежней страницы не передается). Такие страницы нужно вовремя выявлять и менять 302 редирект на 301.
Узнать тип редиректа можно с помощью проверки кодов статуса http страниц, с которых идет перенаправление.
Если отдается статус-код 302, это значит, что настроен временный редирект, и его следует исправить. Наиболее предпочтительным является полное устранение такого редиректа с сайта (например, закрытие страницы – настройка 404 ошибки).
Если редирект сделан с целью перенаправить пользователей с одной страницы на другую (например, если предыдущая страница уже не нужна), нужно заменить его на 301-й редирект, который нормально воспринимается поисковой системой.
Настройка 301 редиректа в файле .htaccess с помощью директивы RewriteRule модуля mod_rewrite
• Редирект 301 с без www на www
RewriteEngine On
RewriteCond %{HTTP_HOST} ^yoursite.com$ [NC]
RewriteRule ^(.*)$ http://www.yoursite.com/$1 [R=301,L]
Вместо yoursite.com в обеих строках прописываем свой домен, остальное без изменений. Если настройка идет с сайта www на без www, то в предпоследней строчке добавляется перед названием сайта www, а в последней строчке удаляется www.
Если нет опыта в настройке редиректов, не рискуйте, а доверьтесь профессионалам. Веб-разработчик всегда поможет вам с грамотной реализацией этой доработки!
• Редирект 301 для изменения адреса страницы
RewriteEngine On
RewriteCond %{HTTP_HOST} ^yoursite.com$ [NC]
Redirect 301 /old.html http://www.yoursite.com/new.html
• Редирект старого домена на новый
RewriteEngine On
RewriteCond %{HTTP_HOST} olddomen.net
Существует еще один редирект – с помощью мета-тега Refresh. В ходе его выполнения через несколько секунд после загрузки страницы автоматически загружается другая страница. Мета-тег Refresh часто встречается в шаблонах сайта. Однако подобная переадресация расценивается поисковыми системами как нарушение лицензии и может привести к запрету индексации и бану.
Обнаружить данный изъян просто. Если при заходе на страницу производится перенаправление на другую страницу, и если в исходном коде страницы присутствует директива meta refresh с указанием URL, куда производится редирект, то на сайте используется редирект с помощью мета-тега Refresh.
От такого редиректа следует избавляться: либо устранять перенаправление, указывая действительные страницы, либо организовывать 301 редирект вместо имеющегося.
Протокол https
Если URL сайта начинается с http, это означает, что страница работает в стандартном режиме: все данные, внесенные пользователем в одну из форм на сайте, будут передаваться в незащищенном виде. При использовании протокола https все данные, включая код самой страницы, будут передаваться в двустороннем режиме в зашифрованном виде по протоколу SSL и TLS, тем самым обеспечивая защиту данных.
Именно по этой причине протокол https используют на сайтах, которые работают с денежными массами либо с конфиденциальной информацией, разглашение которой может привести к материальным затратам пользователя.
На сегодняшний день протокол https поддерживается практически всеми браузерами. А поисковые системы работают как с протоколом http, так и с https. Поэтому больших проблем с продвижением сайтов на нестандартном протоколе не возникает. Однако если на сайте есть 2 версии одной и той же страницы – на http и на https, то для поисковой системы они будут дублями, а наличие дублей мешает продвижению. Также может возникнуть проблема при выборе основного зеркала, аналогичная выбору между зеркалами с www и без www.
Поэтому стоит использовать данный протокол только в случаях, действительно требующих конфиденциальности. На остальных страницах лучше отказаться от https, чтобы не усложнять оптимизацию и индексацию сайта.
Вернуться назад: Устранение проблем с хостингом и оптимизация кода сайта Читать далее: Сопутствующие настройки сайта