Как заставить поисковики возвращаться на сайт, после того как он был недоступенКак заставить поисковики возвращаться на сайт, после того как он был недоступенКак вы думаете, что делает Googlebot и другие поисковые боты, если в момент, когда они пытаются проиндексировать ваш сайт, вы приостановили его работу, например, для технических работ?
Надеюсь, что вы не делаете с сайтом ничего такого, что может привести к большой задержке ответа, в то время, когда google пытается проиндексировать ваши страницы, так как, если google получит ошибку 404 Not Found или 500 - pagerank вашей страницы может прекратить свое существование.
Как можно уведомить Googlebot и другие поисковые ботам, что сейчас вы работаете над страницей и хотели бы, чтобы боты посетили сайт/страницу позже, например через 1 час? Я вам покажу, как это сделать.
Google Webmaster Central Blog, All About Googlebot
Если мой сайт временно приостановлен, как мне сказать Googlebot, чтобы он вернулся позже для индексации страницы над которой я работаю? Как использовать эти SEO знанияЧтобы отправлять google и другим поисковым ботам заголовок 503 Service Temporarily Unavailable мы будем использовать код mod_rewrite в файле .htaccess. Также мы будет отправлять заголовок Retry-After: 3600, который сообщит ботам, что им необходимо проверить страницу вновь через 3600 секунд (1 час), когда она будет уже доступна.
Заголовок Retry-AfterСсылки: Retry-After, 503 Service Unavailable
Заголовок Retry-After может быть использован с 503 ответом сервера (Сервис недоступен) для указания периода времени, в течении которого сервис будет не в состоянии отвечать на клиентские запросы. Этот заголовок также может быть использован вместе с любым 3хх (Redirection) ответом для указания минимального периода времени, по истечении которого клиент должен сделать redirect запрос. Значением этого заголовка может быть либо HTTP дата, либо целое число в секундах.
Retry-After = "Retry-After" ":" ( HTTP-date | delta-seconds )
Вот два примера использования:
Retry-After: Fri, 31 Dec 1999 23:59:59 GMT
Retry-After: 120 В последнем примере задержка равна 2 минутам.
Отправка 503 ответа только для GoogleBot
Options +FollowSymLinks
RewriteEngine On RewriteBase / RewriteCond %{HTTP_USER_AGENT} ^.*(Googlebot|Googlebot|Mediapartners|Adsbot|Feedfetcher) -?(Google|Image)? [NC] # or RewriteCond %{HTTP_USER_AGENT} ^.*google.* [NC] RewriteRule .* /cgi-bin/error/503.php Отправка 503 ответа всем кроме разработчика
Options +FollowSymLinks
RewriteEngine On RewriteBase / RewriteCond %{REMOTE_HOST} !^1.1.1.1 RewriteCond %{REQUEST_URI} !^/cgi-bin/error/503.php [NC] RewriteRule .* /cgi-bin/error/503.php Отправка поисковым ботам 503 ответа, а посетителям страницы с информацией о причинах простоя
Options +FollowSymLinks
RewriteEngine On RewriteBase / RewriteCond %{HTTP_USER_AGENT} ^.*(Googlebot|Googlebot|Mediapartners|Adsbot|Feedfetcher) -?(Google|Image)? [NC] RewriteCond %{REQUEST_URI} !^/cgi-bin/error/503.php [NC] RewriteRule .* /cgi-bin/error/503.php RewriteCond %{REMOTE_HOST} !^1.1.1.1 RewriteCond %{REQUEST_URI} !^/cgi-bin/error/404.php [NC] RewriteRule .* /under-development-explain.html [R=302,L] Что такое 503 Service Temporarily Unavailable?
Код скрипта для выдачи 503 ответаPHP
Если вы используете CGI версию PHP, тогда вам необходимо отправлять заголовок Status дополнительно к HTTP/1.1, а если вы используете mod_php, тогда Status отправлять не надо.
<?php
ob_start(); header(‘HTTP/1.1 503 Service Temporarily Unavailable’); header(‘Status: 503 Service Temporarily Unavailable’); header(‘Retry-After: 3600′); header(‘X-Powered-By:’); ?><!DOCTYPE HTML PUBLIC “-//IETF//DTD HTML 2.0//EN”> <html><head> <title>503 Service Temporarily Unavailable</title> </head><body> <h1>Service Temporarily Unavailable</h1> <p>The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.</p> </body></html> Perl CGI
#!/usr/local/bin/perl
print "Status: 503 Service Temporarily Unavailablen"; print "Content-Type: text/html; charset=UTF-8;n"; print "Retry-After: 3600rnrn"; print "<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">n<html><head>n <title>503 Service Temporarily Unavailable</title>n"; print "</head><body>n <h1>Service Temporarily Unavailable</h1>n<p>The server is temporarily unable to service yourn"; print "request due to maintenance downtime or capacityn problems. Please try again later.</p>n</body></html>"; Что такое ошибки "недостижимые URL"?Google устанавливает такую ошибку, когда не может получить доступ к странице. Такими ошибками считаются, например, ошибки DNS или превышение таймаута. Ваш сервер может быть недоступен или занят, когда мы пытаемся получить страницу. Вот список причин ошибок недоступности URL:
|