浅谈301重定向中规则的语法

2019-03-15    来源:www.yc-tz.com

容器云强势上线!快速搭建集群,上万Linux镜像随意使用

301重点向一直是很多seoer都接触过的,我相信很多站在在做301的时候只是去网上找下相关规则,然后改下,可以说很多人并不知道规则的意思,今天本人以“Apache服务器”和“IIS服务器”为例就给大家分享下,如有不对,还请原谅。

如果网站服务器是Apache,在.htaccess文件开始处加入一下规则(如果没权限修改, 请联系服务提供商协助修改):

RewriteCond %{http_host} ^domain.com [NC]

RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]

{HTTP_HOST}是服务器变量

^是匹配输入字符串的开始位置。

$是匹配输入字符串的结束位置。

R=301就是执行永久重定向,由于R还有302的意思,所以这这里强调下R=301,

L是规则结束的意思

一个最常用的正则就是(.*)。它含有两个元素:一是“点”,表示任意字符;二是“星”,表示以前的全部字符。所以(.*)会匹配{REQUEST_URI}的所有字符。{REQUEST_URI}是URL中出去域名以及“?”符号的所有查询字符,也是Apache 重写技术尝试匹配的字符。

[NC]告诉Apache服务器忽略正则中的大小写,它经常被用到{HTTP_HOST}服务器参数上,因为域名里面是不会区分大小写的;

如果网站服务器是IIS,要使用ISAPI_Rewrite组件,在httpd.ini文件开始处加入以下规则:

RewriteCond Host: ^domain\.com$

RewriteRule (.*) http\://www\.domain\.com$1 [R,I]

^是匹配输入字符串的开始位置。

$是匹配输入字符串的结束位置。

(.*)会匹配{REQUEST_URI}的所有字符。

I是不管大小写强行指定字符匹配,这个FLAG影响RewriteRule指令和相应的RewriteCond 指令。

R是强制服务器对客户端发出重定向指示即时应答,提供目的URl的新地址,重定向规则经常是最后规则。

\将下一个字符标记为一个特殊字符、或一个原义字符、或一个 后向引用、或一个八进制转义符。

注:以上代码domain.com均为示例,如有描述不正确还请指出,本文由杭州婚外情调查公司http://www.hydc007.com站长编写,转载请保留。

标签: 网站SEO 301重定向 Apache服务器 

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:分享企业站最佳营销方式:搜索引擎优化加推广

下一篇:网站优化之内部优化篇