前几天作者的几个网站受到攻击被迫关站维护,等到网站重新开启的时候几个搜索引擎收录量和引索量骤降。
对于此问题,我们该如何减轻网站临时关闭或出现故障时候对搜索引擎的影响呢(当然关站会造成诸多影响,这里只是简单谈一下)?
搜索引擎如何知悉你的网站动向呢?无非就是利用蜘蛛。所以说我们的思路转变为:如何让蜘蛛知道网站正在维护。
在详细介绍网站临时关闭时的SEO处理步骤前,我们先复习下几个SEO最常碰到的HTTP状态码,SEO过程中最常见的HTTP状态码有:
200 - 服务器成功返回网页
301 - 请求的网页已永久移动到新位置。当URLs发生变化时,使用301代码。搜索引擎索引中保存新的URL。
302 - 请求的网页临时移动到新位置。搜索引擎索引中保存原来的URL。
404 - 请求的网页不存在
503 - 服务器目前无法使用(由于超载或停机维护)。通常,这只是暂时状态。
那么这样就好说了,如果我们网站临时关闭,必须告知用户以及蜘蛛,让用户跟蜘蛛知道网站只是临时关闭,而不是永久关闭,这样用户跟蜘蛛就会隔断时间再次访问网站,具体做法呢?没错,就是创建一个返回503状态的文件。
1. 创建一个503.php的文件,并把它放到服务器的根目录。
这里只是列举了php网站的方法,其他环境的网站可以自行学习解决。
<?php header("HTTP/1.1 503 Service Temporarily Unavailable"); header("Status: 503 Service Temporarily Unavailable"); header('Retry-After: Sat, 8 Oct 2012 18:27:00 GMT"); ?> <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>网站名称</title> </head> <body> <h1>网站名称</h1> <p>网站维护中</p> <p>将于2015/10/8恢复</p> </body> </html>
第一二句告知搜索蜘蛛网站处理暂时关闭状态,第三句告知搜索蜘蛛,网站将于2015年10月8日18:27从新开放,注意:这里用的是格林威治标准时间。
但是光放一个503信息到服务器里还是不够的,蜘蛛会访问网站不同的页面,因此我们必须引导所有的蜘蛛到503.php这个页面,让蜘蛛知道,整个网站处于临时关闭中,而不是个别页面。如果站长使用的是Apache/Linux服务器,我们只需在.htaccess设置一下,引导所有的蜘蛛到505.php页面,这里我们要使用302跳转,注意:在这里千万不要使用301跳转,因为301是永久的,在这种情况下会毁灭掉整个网站。
2. 引导蜘蛛到503.php
将下面这段代码保存到.htaccess文件,并上传到网站根目录
Options +FollowSymLinks RewriteEngine On RewriteBase / RewriteCond %{REMOTE_ADDR} !^00\.00\.00.\.00 RewriteCond %{REQUEST_URI}!^/503.php [NC] RewriteRule ,* /503.php [R,L]
最后一行的R, 告知蜘蛛,这个是302跳转,属于暂时的。
这样我们就完成了网站临时关闭的部署,可以放心关站了!
另外,百度站长平台还推出了一项闭站保护的工具可以让百度知悉自己的网站正在维护。
闭站保护的相关说明:
1、若网站一段时间内不能访问,使用闭站保护可以使百度停止对该网站的网页抓取并屏蔽已收录网页;网站恢复访问后,使用闭站恢复可以解除对已收录网页的屏蔽并恢复抓取。
2、站点关闭后应及时申请闭站,否则从站点关闭到闭站保护生效期间内抓取的链接不会得到保护。
3、支持两种闭站方法,全站HTTP状态码设置为404或者切断电源关闭服务器,不支持使用DNS方法闭站。
网站关闭的几个错误做法:
错误一,网站关闭没有告知
有些站长朋友,没有做好告知工作,随随便便就把网站关闭,导致用户以及蜘蛛访问时,显示404页面。最糟的情况是,用户以及蜘蛛会误以为网站已经倒闭,而不会再次光临,就跟餐厅一样,关门,没有贴公告,同样的其顾客会以为餐厅已经倒闭了,下次不会再来了。
错误二,单一页面告知
有些站长则会制作一个单一页面,告知用户网站正在维护,并将全站其他的页面都指向这一页面,这也是非常不智的行为,因为这样做只告知了用户,而没有通知蜘蛛,这样蜘蛛只会以为其他页面被删除了,只剩下这个页面。
本文固定连接:https://code.zuifengyun.com/2015/10/1073.html,转载须征得作者授权。