文档章节

如何避免网站维护时被搜索引擎“误解” (二)

esky001
 esky001
发布于 2015/04/22 09:41
字数 1301
阅读 2
收藏 0

行业解决方案、产品招募中!想赚钱就来传!>>>

昨天写了一个用header处理跳转,防止被搜索引擎误解的方法,其实就是301和302的关系.今天要转载一篇相对处理方法较多,且更实用的方法 

原文来自:http://www.eamonning.com/blog.php?id=309

回到主题,有些网站常常因为需要进行常规维护或者因为某些原因(黑客)而不得不临时关闭,如果用户或者搜索引擎在这个时候访问临时关闭的网站,这将会影响网站的声誉或者排名流量。因此做好网站临时关闭的一些工作。  

  下面我将教大家怎么处理好网站临时关闭时跟用户还有搜索引擎的一些三角关系!  

  让用户与蜘蛛知道网站正在维护

   当一家餐厅的老板,因为某些原因不得不临时关闭餐厅,老板会在餐厅门口贴公告,告知顾客餐厅临时关闭以及恢复营业的时间,这样顾客就不会误以为 餐厅倒闭,而不再次光临。同样的道理也可以套用在网站上,如果一个网站因为某些原因必须临时关闭,那么站长有责任通知蜘蛛还有用户,并告知恢复的时间,这 样蜘蛛还有用户才会再次访问网站,而不是误以为网站已经永久关闭。

  网络的世界比较复杂,因此告知用户与蜘蛛是一名艺术,下面我们列举两个站长朋友经常犯的错误。  

  错误一,网站关闭没有告知

  有些网站没有做好告知工作,随随便便就把网站关闭,导致用户以及蜘蛛访问时,显示404页面。

[attach=924]

  最糟的情况是,用户以及蜘蛛会误以为网站已经倒闭,而不会再次光临,就跟餐厅一样,关门,没有贴公告,同样的其顾客会以为餐厅已经倒闭了,下次不会再来了。

  错误二,单一页面告知  

  有些站长则会制作一个单一页面,告知用户网站正在维护,并将全站其他的页面都指向这一页面。

  这也是非常不智的行为,因为这样做只告知了用户,而没有通知蜘蛛,这样蜘蛛只会以为其他页面被删除了,只剩下这个页面。

  我们先复习下几个最常碰到的HTTP状态码  

  1. 200 - 服务器成功返回网页

  2. 301- 请求的网页已永久移动到新位置。当URLs发生变化时,使用301代码。搜索引擎索引中保存新的URL。  

  3. 302 -请求的网页临时移动到新位置。搜索引擎索引中保存原来的URL。  

  4. 404 - 请求的网页不存在  

  5. 503 - 服务器目前无法使用(由于超载或停机维护)。通常,这只是暂时状态。  

  如何告知用户以及蜘蛛网站正在维护?  

  如果我们网站临时关闭,必须告知用户以及蜘蛛,让用户跟蜘蛛知道网站只是临时关闭,而不是永久关闭,这样用户跟蜘蛛就会隔断时间再次访问网站,具体做法是创建一个返回503状态的文件。  

  1. 创建一个503.php的文件,并把它放到服务器的根目录 

PHP代码

  1. <?php    

  2.   

  3.   header("HTTP/1.1 503 Service Temporarily Unavailable");    

  4.   header("Status: 503 Service Temporarily Unavailable");    

  5.   header('Retry-After: Sat, 8 Oct 2012 18:27:00 GMT");   

  6. ?>   

  7.  

  8.   <!DOCTYPE HTML>   

  9.   <html>   

  10.   <head>   

  11.   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />    

  12.   <title>网站名称</title>     

  13.   </head>      

  14.   <body>    

  15.   <h1>网站名称</h1>    

  16.   <p>网站维护中</p>     

  17.   <p>将于2012/10/8恢复</p>      

  18.   </body>      

  19.   </html>    

  第一二句告知搜索蜘蛛网站处理暂时关闭状态,第三句告知搜索蜘蛛,网站将于2012年10月8日18:27从新开放,注意:这里用的是格林威治标准时间。  

  但是光放一个503信息到服务器里还是不够的,蜘蛛会访问网站不同的页面,因此我们必须引导所有的蜘蛛到503.php这个页面,让蜘蛛知道,整个网站处于临时关闭中,而不是个别页面。  

  如果站长使用的是Apache/Linux服务器,我们只需在.htaccess设置一下,引导所有的蜘蛛到505.php页面,这里我们要使用302跳转,注意:在这里千万不要使用301跳转,因为301是永久的,在这种情况下会毁灭掉整个网站。  

  2.引导蜘蛛到503.php  

  将下面这段代码保存到.htaccess文件,并上传到网站根目录

XML/HTML代码

  1. Options +FollowSymLinks    

  2.   RewriteEngine On    

  3.   RewriteBase /    

  4.   RewriteCond %{REMOTE_ADDR} !^00.00.00..00    

  5.   RewriteCond %{REQUEST_URI}!^/503.php [NC]    

  6.   RewriteRule ,* /503.php [R,L]    

  最后一行的[R, 告知蜘蛛,这个是302跳转,属于暂时的。

  这样我们就完成了网站临时关闭的部署,可以放心关站了!

---EOF---

上述的方法其实会更实用一些,关于nginx,就不仔细写了nginx其实还更方便呢...


esky001
粉丝 0
博文 2
码字总数 1592
作品 0
泉州
私信 提问
加载中
请先登录后再评论。
Netty那点事(三)Channel与Pipeline

Channel是理解和使用Netty的核心。Channel的涉及内容较多,这里我使用由浅入深的介绍方法。在这篇文章中,我们主要介绍Channel部分中Pipeline实现机制。为了避免枯燥,借用一下《盗梦空间》的...

黄亿华
2013/11/24
2W
22
访问安全控制解决方案

本文是《轻量级 Java Web 框架架构设计》的系列博文。 今天想和大家简单的分享一下,在 Smart 中是如何做到访问安全控制的。也就是说,当没有登录或 Session 过期时所做的操作,会自动退回到...

黄勇
2013/11/03
3.5K
6
Flappy Bird(安卓版)逆向分析(一)

更改每过一关的增长分数 反编译的步骤就不介绍了,我们直接来看反编译得到的文件夹 方法1:在smali目录下,我们看到org/andengine/,可以知晓游戏是由andengine引擎开发的。打开/res/raw/at...

enimey
2014/03/04
6K
18
我的架构演化笔记 功能1: 基本的用户注册

“咚咚”,一阵急促的敲门声, 我从睡梦中惊醒,我靠,这才几点,谁这么早, 开门一看,原来我的小表弟放暑假了,来南京玩,顺便说跟我后面学习一个网站是怎么做出来的。 于是有了下面的一段...

强子哥哥
2014/05/31
976
3
Swift百万线程攻破单例(Singleton)模式

一、不安全的单例实现 在上一篇文章我们给出了单例的设计模式,直接给出了线程安全的实现方法。单例的实现有多种方法,如下面: class SwiftSingleton { } 这段代码的实现,在shared中进行条...

一叶博客
2014/06/20
3.4K
16

没有更多内容

加载失败,请刷新页面

加载更多

开源FPGA单板iCESugar

随着产业的发展,近年来FPGA越来越得到市场的重视,5G、矿机、人工智能、图像识别、risc-v、通信等众多领域均可见到FPGA的身影,目前比较知名的FPGA厂商有xilinx、altera、lattice等,其中x...

whoisliang
7分钟前
0
0
合并记录帮助文档

合并记录步骤用于将两个不同来源的数据合并,这两个来源的数据分别为旧数据和新数据;该步骤将旧数据和新数据按照指定的关键字匹配、比较、合并,并显示差异信息。接下来就详细介绍一下该步骤...

osc_slnrw1du
7分钟前
0
0
Spark之RDD转换算子(transformation)大全

前面已经给大家讲过RDD原理,今天就给大家说说RDD的转换算子有哪些,以便大家理解。 对于转换操作,RDD的所有转换都不会直接计算结果,仅记录作用于RDD上的操作,当遇到动作算子(Action)时...

osc_3nr2bq5w
9分钟前
0
0
自定义常量数据帮助文档

自定义常量数据步骤主要用于增加自定义字段和行集数据到流中,可增加多个字段并为每个字段赋予行集的值。步骤配置信息如图1所示。 图1 自定义常量数据步骤配置信息 下文详细解释各控件的含义...

osc_r9wwwi0j
9分钟前
0
0
Linux安装配置ftp(Ceonts 7)

1、安装vsftpd yum -y install vsftpd (我这里已经安装好了,只要不报错即安装成功) 安装完成后可以在/etc/vsftpd目录下看到vsftpd.conf 文件,这是vsftp的配置文件。 2、 添加一个ftp用户...

osc_tko37abm
10分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部