重定向
作者:
最后更新于 | 最初发布于 | 分类: SEO知识库
重定向,是什麽?
在解释这个之前,先说说最常用的301重定向。
如果您需要更改某个网页在搜索引擎结果中显示的网址,建议您使用服务器端301重定向。这是确保用户及搜索引擎定向至正确网页的最佳方法。301状态代码表示某网页已永久迁移至新位置。
上面这段就是Google 站长工具所说的网站迁移是所需要做的301重定向。这个对于很多站长都是非常常见的一个操作。
好吧,回到开头的问题,就是什麽是重定向。
简而言之,就是从一个页面的URL,重新定向到另外一个页面的URL。
重定向的种类
重定向有好多种,比如上面说的301啊,还有302啊,其实按照技术标准来分,3xx的返回码都是重定向类,下面挨个来说说。
300 Multiple Choices
客户请求的文档可以在多个位置找到,这些位置已经在返回的文档内列出。如果服务器要提出优先选择,则应该在Location应答头指明。
301 Moved Permanently
客户请求的文档在其他地方,新的URL在Location头中给出,浏览器应该自动地访问新的URL。
302 Found
类似于301,但新的URL应该被视为临时性的替代,而不是永久性的。
303 See Other
类似于301/302,不同之处在于,如果原来的请求是POST,Location头指定的重定向目标文档应该通过GET提取
304 Not Modified
客户端有缓冲的文档并发出了一个条件性的请求(一般是提供If-Modified-Since头表示客户只想比指定日期更新的文档)。服务器告诉客户,原来缓冲的文档还可以继续使用。
305 Use Proxy
客户请求的文档应该通过Location头所指明的代理服务器提取
307 Temporary Redirect
和302(Found)相同。许多浏览器会错误地响应302应答进行重定向,即使原来的请求是 POST,即使它实际上只能在POST请求的应答是303时才能重定向。由于这个原因,HTTP 1.1新增了307,以便更加清除地区分几个状态代码: 当出现303应答时,浏览器可以跟随重定向的GET和POST请求;如果是307应答,则浏览器只能跟随对GET请求的重定向。
重定向的实现级别
一种是在服务器端做,比如在Apache服务器上,可以使用的mod_rewrite,在.htaccess文件里设置好,用户访问的网址在到达服务器后,就会返回新的网址。
另一种是在页面级别的,就是把跳转卸载页面中,可以用javascript,也可以用php等。
还有一种是 meta refresh,也可以做到。
重定向的测试
测试的方法有很多,这里介绍的是我用的,也是我写的一个测试工具。
HTTP Status 检测器
可以用来测试301重定向等。
评论