.htaccess的301重定向方法详解
【.htaccess在线生成说明】之htaccess文件301重定向方法全解
Redirect指令是.htaccess文件中一个非常常用的指令,它的作用是发送一个外部重定向使客户端重新跳转到一个不同的URL。
Redirect重定向指令有三个不同的状态参数:
第一个是permanent:永久性301重定向;
第二个是temp:临时重定向状态码,即返回302;
第三个是seeother:此参数表示“参见”的含义,即本资源已经被另外一个更好的资源替代了;
另外,还有一个gone,表示此资源已经被永久性删除了,因此,也就不存在什么跳转关系了。其后面的URL会被忽略。但一般来说,对于SEO上的用途,301永久跳转是用的最多的。
比如,如果希望网页从本空间的 /service目录跳转到 http://foo2.example.com/service ,那么,则可以使用如下htaccess文件指令:
Redirect [permanent,temp,seeother] /service http://foo2.example.com/service
此时,如果客户端请求http://example.com/service/foo.txt,则会被重定向到http://foo2.example.com/service/foo.txt。通过例子可以看出,此时的重定向是带有广泛匹配的,即:该目录下的所有子文档都会被重定向到一一对应的新地址上去。这一特性也给htaccess文件的编写带来了非常大的方便。
因为Redirect指令进匹配完整的URL,因此,该命令不能用来匹配文件名的正则表达式。如果希望匹配更多的条件,请使用RedirectMatch命令。
后文将进行详细的介绍:
RedirectMatch 指令:
RedirectMatch指令是基于正则表达式匹配对当前的URL发送一个外部重定向命令。该命令与Redirect等效,但是URL能使用正则匹配。它使用了标准的正则表达式而不是简单的文件匹配。
其语法是:
RedirectMatch [status] regex URL
如果egex与URL相匹配,则服务器会把所匹配的括弧中的字符串替换到该指令所指定的目标字符串中,并将它视之为一个文件名。例如,重定向所有GIF文件到另一个服务器上同名的JPEG文件,可以:
RedirectMatch (.*)\.gif$ http://www.anotherserver.com$1.jpg
因此,该命令更加强大。其实际作用在于,比如想将本服务器上的所有图片、rar等资源换到专用的FTP服务器上去,这个功能就起大作用了。
与上述的301重定向命令类似的还有RedirectPermanent指令,与之对应的302重定向还有RedirectTemp指令。他们在用法上都是大同小异,只是这两个指令将之前的那两个指令具体化了一下,并且不带有状态码参数。
比如:
RedirectPermanent /service http://foo2.exsample.com/service 等效于 Redirect Permanent /service http://foo2.exsample.com/service
无论使用哪种表达都具有同样的效果。
301永久重定向将会促使搜索引擎尽快更新收录的地址并且收录新的地址。但是,某些情况下,这一方法可能会让搜索引擎作为作弊处理。这些指令的作用域都包含.htaccess配置文件,直接将需要的指令加入该文件
.htaccess文件在线生成器地址:http://blog.wangqu.org/htaccess/
相关新闻:
- 通过htaccess实现网站SEO妙用
- 如何选择国外虚拟主机
- elitenethosting.com是一个组团忽悠的诈骗组织!
- 利用.htaccess文件进行301重定向URL标准化
- 通过.htaccess文件开启图片缓存 加快页面载入速度
感谢分享~
学习了!
谢谢了 很实用的东西
学习了,但是没有找到我要和答案。
还是没我需要的。
找到我要和答案
前面的介绍看不懂
直接用那个在线工具搞定
不错 学习中。。。
非常感谢分享..
这个301重定向写得不错。
感谢分享..
你好,我刚才的提问能不能帮我发个邮件啊,我感觉问题严重
能不能用重新定向来实现,不管任何域名进来,都统一转到http://websl.cn/space.php?uid=839&do=blog&id=1751 这样的参数,不然搜索引擎都以为我作弊了
没办法了
对不起 第一次没发出去,就13楼这个问题 帮助我解答下谢谢
有问题,设置的跳转不起作用啊
我的怎么就是不行了。。。谁可以帮我解决下
学习了,我想问的是seeother这个参数能传递权重吗?
实用的!谢谢博主的博文!