Новогодняя акция – 25% скидки – узнать больше

Вход / Попробовать бесплатно
Почему мы
HAPPYHOLIDAYS

Новогодняя акция – 25% скидки

узнать больше

КристинаКристина
· 7 мин
0

[Инфографика] 301, 404, 503 и другие цифры — как с ними работать?

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

Начнем с того, что все коды ответа делятся на 5 групп, каждая из которых несет определенный общий смысл:
100. Говорит об успешном получении запроса и старте его обработки.
200. Говорит о том, что запрос получен и успешно обработан.
300. Говорит о временном перемещении запрашиваемого контента на другой адрес.
400. Говорит о проблеме с вашим запросом.
500. Говорит о том, что вы запрашиваете специфический ресурс и он найден, но сервер не может дать вам к нему доступ.

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

настройка кодов ответов

как настроить коды ответов

300 MULTIPLE CHOICES

Чаще всего код означает, что ресурс был перемещен, но не перенаправляет его автоматически, а предлагает несколько альтернативных страниц — по языку, теме или по другим характеристикам.

Когда встречается?

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

301 MOVED PERMANENTLY

Говорит о том, что URL перенесен по другому адресу.

Когда встречается?

Самый “свежий” пример — перевод сайта с HTTP на HTTPS. В этом случае SEO-специалисты предпочитают именно этот код, потому что он передает почти весь ссылочный вес. Раньше 301 редирект приводил к 15% понижению PageRank. Но стремясь мотивировать оптимизаторов перейти на безопасный протокол соединения, Google изменил правила и теперь 301 (а с ним и все 3хх редиректы) не теряет PageRank вообще.

Нюанс:

#1 Google неоднократно заявлял об отмене Page Rank как фактора ранжирования. Теперь тут всё как в религии — кто-то в него верит, а кто-то нет. В любом случае, PageRank — один из сотен факторов, которые учитывает Google при ранжировании. Вы не потеряете вес, если единственное, что меняется при 301 редиректе — это URL. Но с каждым дополнительным изменением на странице вы повышаете риск.
#2 Редирект не панацея! Изначально он вообще был придуман только для склейки зеркал (страниц с www и без www). Но SEO-профи — народ креативный — очень быстро придумали, как использовать его с максимальной пользой.
#3 Есть ограничения. Google не индексирует дальше 4-го редиректа, и после каждого теряется вес и вероятность, что роботы дойдут до нужного. Лайфхак — ставьте прямые редиректы. (вместо 1 -> 2 -> 3, делать сразу 1 -> 3).

Как настроить?

Чтобы перенаправить пользователя нужно добавить в .htaccess такие строки:

Для склейки зеркал:

RewriteCond %{HTTP_HOST} ^www.site\.com$ [NC]

RewriteRule ^(.*)$ http://site.com/$1 [R=301,L]

Для редиректа одной страницы на другую:

Redirect 301 /oldpage.html http://www.site.com/newpage.html

Для редиректа дублей главной:

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]+/)*(default|index|main)\.(html|php|htm)\ HTTP/ [NC]

RewriteRule ^(([^/]+/)*)(default|main|index)\.(html|php|htm)$ http://www.site.com/$1 [L,R=301]

 

302 Found (HTTP 1.1) / Moved Temporarily (HTTP 1.0)

В отличие от постоянного 301 редиректа, этот — временный. Он говорит о том, что страница найдена, но пока размещена по другому адресу.

Когда встречается?

Обычно его путали с 301, а после того, как Google приравнял все 3xx редиректы и сделал так, что они не приводят к потере PageRank — ситуация усугубилась. По факту его нужно использовать тогда, когда вы уверены, что будете использовать этот же URL снова. Как раз об этом вы и говорите поисковику с помощью 302 сигнала, а он в ответ оставляет весь ссылочный вес за страницей.

Нюанс:

#1 Несмотря на то, что Google “приравнял” 3хх редиректы в плане сохранения PageRank, их одинаковость не всегда подтверждается на практике. Стоит помнить, что раньше 302 передавал PageRank, но только через внушительное количество времени. У 301 редиректа это происходит практически мгновенно.
#2 302 — это web-стандарт и если Google его понимает по-одному, то не факт, что другие поисковики делают также.
#3 Если вы не очень опытны, пользуйтесь сервисами генерации редиректов, например, RapidTables или htaccessredirect.

Как настроить?

Добавьте в .htaccess:

Для страницы:

Redirect 302 /page.html/ http://site.com/new-page.html

где: /page.html/ — временно недоступная страница;

http://site.com/new-page.html — новая страница.

Для всего сайта:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.domain.com [NC]

RewriteRule ^(.*)$ http://domain.com /$1 [R=302,L]

где: (.*)$ — говорим, что весь домен перенаправлен;

http://domain.com / адрес нового домена;

[R=302,L] — сообщение о том, что это временный редирект.

304 Not Modified

Так сервер говорит, что страница осталась неизменной со времени последнего посещения.

Когда встречается?

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

Нюанс:

Лучший ответ сервера для оптимизатора 200 ОК — он означает, что запрос обработан правильно. Но 304 несет всю ту же нагрузку. Если вкратце, то на новые страницы и первое посещение должен выдаваться ответ 200, на все последующие, если не произошло изменений — 304.

Как настроить?

Прописать в .htaccess:

RewriteRule .* — [E=HTTP_IF_MODIFIED_SINCE:%{HTTP:If-Modified-Since}]

RewriteRule .* — [E=HTTP_IF_NONE_MATCH:%{HTTP:If-None-Match}]

307 Moved Temporarily (HTTP 1.1 Only)

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

Нюанс:

Некоторые агенты используют более ранние протоколы и не понимают статус 307. Поэтому включите в сущность запроса гипертекстовую заметку со ссылкой на новый урл, чтобы пользователь увидел, куда ему следуют перейти.

Как настроить?

Для настройки кода создайте отдельный файл .htaccess.307 с текстом:

RewriteEngine On

RewriteBase /

Поменяйте 123 на свой IP адрес.

RewriteCond %{REMOTE_ADDR} !^123\.123\.123\.123$

Последние 2 строчки отправляют сайт в оффлайн:

RewriteCond %{REQUEST_URI} !^/307\.php$

RewriteRule ^(.*)$ http://www.yoursite.com/307.php [R=307,L]

 

403: Forbidden

Этот код ответа говорит о том, что пользователю запрещен доступ к странице.

Когда встречается?

Если контент доступен только определенным авторизированным юзерам. Например, автору этой статьи цифра 403 знакома до боли — она каждый раз видит ее, когда пытается по прямому урлу зайти в кабинет админа SE Ranking, используя пароль и логин личного аккаунта.

Ошибка может возникать, если индексный файл для главной указан неправильно. Он обязательно должен иметь название index и расширение: *.shtml, *.html, *.htm, *.phtml или *.php.

Нюанс:

Когда вы переносите сайт на https, то 403 выдает, когда DNS-кэш ещё не успел обновиться, а вы уже что-то от него хотите. Лучше подождите, или, если вопрос жизни и смерти, обновите его принудительно.

Как настроить?

Добавить в файл .htaccess следующую строку:

“Options +Indexes”.

404 Not Found

Самая “любимая” ошибка в SEO. Говорит о том, что сервер ничего не нашел по указанному адресу.

Когда встречается?

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

Каждое 404 сообщение — сигнал поисковой системе, что с вашим сайтом что-то не так. Чем больше их на сайте — тем выше ваши риски на провал в выдаче. Поэтому мониторьте 404 ошибки с помощью Google Search Console или таких инструментов, как SEO-аудит страницы. Для таких страниц лучше настроить 410 код ответа.

Нюанс:

#1 Если раньше после перехода на несуществующую страницу пользователь видел перед собой только цифру 404, то сейчас — просто море креатива. Но не забывайте, что пользователь пришел с конкретным запросом и наша задача — решить его, а не развлечь. Поэтому кроме оформления не забудьте оптимизировать 404 страницу:
#2 Извинитесь перед пользователем за ошибку.
#3 Помогите ему найти то, что он хотел: добавьте ссылки на главную страницу и топовые категории.
#4 Добавьте форму для обращения и контакты вашей поддержки.
Это даст свои плоды — в TechСrunch после оптимизации 404 трафик повысился на 9%.

Как настроить?

Если за вас это не сделала CMS, то настроить ответ 404 можно самому:
Через htaccess: добавьте строчку ErrorDocument 404 http://www.site.ru/404.php.

410 Gone

Этот ответ говорит о том, что страница или документ не доступны по указанному адресу.

Когда встречается?

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

Нюанс:

Прежде чем удалять страницу сайта подумайте дважды — всегда можно поставить редирект на похожую и получить хотя бы каплю переходов. Если же вы не можете избежать удаления — помните, что есть и побочные эффекты. Исчезнув, страница может прихватить с собой ещё несколько урлов, а значит и их нужно обработать тоже. Приведем как пример кейс со времен запуска Google Панды. Тогда многие начали массово удалять плохой контент. А что происходит, если вы удаляете все сообщения в блоге с определенным тегом? Страница тега тоже удаляется и показывает 404 ошибку. Когда таких набирается много, Google реагирует на это. Так многие нерадивые сеошники потеряли позиции и трафик быстрее, чем от санкций Google Панды.

Как настроить?

Добавьте строчку

Redirect 410 /123.html

451: Unavailable for Legal Reasons

Говорит о том, что запрошенный контент заблокирован по правовым причинам.

Когда встречается?

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

Нюанс:

Чтобы настроить нормальную страницу 451, можно скопипастить 404.php, переименовать и изменить контент.

Как настроить?

HTTP/1.1 451 Недоступные по юридическим причинам

Content-Type: текст / HTML

<html>

<head><title>

Недоступные <title> по юридическим причинам

</TITLE>

</head>

<body>

<p> Этот материал заблокирован в связи с Кодексом джедаев, который запрещает доступ к ресурсам на серверах темной стороны силы </p>

</body>

</html>

503 Service Unavailable

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

Когда встречается?

Чаще всего — во время технического обслуживания сервера. Так вы сигнализируете роботам, что сайт недоступен для индексации и им нужно вернуться немного позже.
Могут быть ещё такие причины:

  • Технические работы по сайту.
  • DDOS-атака на сайт.
  • Использование большого количества скриптов и других элементов с внешних ресурсов: виджеты, картинки.
  • Медленные запросы к базе данных.
  • Чрезмерное количество обращений к сайту со стороны поисковых роботов, пользователей или сервисов по парсингу сайта.

Нюанс:

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

Как настроить?

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

В PHP это будет выглядеть так:

1
$protocol = &quot;HTTP/1.0&quot;;

2
if ( &quot;HTTP/1.1&quot; == $_SERVER[&quot;SERVER_PROTOCOL&quot;] )

3
$protocol = &quot;HTTP/1.1&quot;;

4
header( &quot;$protocol 503 Service Unavailable&quot;, true, 503 );

5
header( &quot;Retry-After: 3600&quot; );

Чем проверить ответ сервера

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

  • SEO-аудит от SE Ranking
  • Live HTTP Headers для Chrome — плагин для проверки через браузер
  • Screaming Frog
  • Google Search Console. Заходите в отчет Crawl > Crawl Error, чтобы найти урлы, которые гугл не понимает.

 

ПОДЕЛИТЬСЯ

КОМЕНТАРИИ

Send this to a friend