网络推广策划方案:浅谈301重定向中规则的语法!

301重点向一直是很多seoer都接触过的,我相信很多站在在做301的时候只是去网上找下相关规则,然后改下,可以说很多人并不知道规则的意思,今天本人以“Apache服务器”和“IIS服务器”为例就给大家分享下,如有不对,还请原谅。 如果网站服务器是Apache,在.htaccess文件开始处加入一下规则(如果没权限修改, 请联系服务提供商协助修改): 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的新地址,重定向规则经常是最后规则。 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 后向引用、或一个八进制转义符。 转载请注明: »

Read More

2020年11月30日 | by