|
IIS服务器的301重定向没有liunux服务器好解决,而且IIS的虚拟主机是无法实现301重定向的,这里也建议大家尽量选择apche服务器来做站。
之前我的博客写过一种方法是在httpd.ini文件里面添加
- RewriteCond Host: ^lezsc\.com$
- RewriteRule (.*) http\://bbs\.lezsc\.com$1 [R,I]
复制代码
来实现IIS服务器下301重定向,结果最近http状态检测发现这样结果是302临时定向。下面就分享下IIS6、IIS7服务器如何做301永久重定向,有2种方法:
方法一:
适用于虚拟空间和独立服务器,需要服务器配置伪静态版本要在1.3以上,在httpd.ini文件里面添加如下代码即可。
- RewriteCond Host: ^lezsc\.com$
- RewriteRule (.*) http\://www\.lzec\.com$1 [I,RP]
- RewriteRule ^(.*)\/forum.php$ http://www.域名.com/ [L,R=301]
复制代码
方法二:
适用于独立服务器,需要建立单独的站点。
一、在站点目录创建一个文件夹,如zhanhelp,然后在这个文件里面新建一个记事本,修改为index.html即可(要把记事本的后缀.txt修改为.html哦)。
二、在Internet 信息服务(IIS)管理器里面新建站点,右键--属性--主目录,选择重定向到,输入网址如:www.zhanhelp.com,同时注意选中下面的资源的永久重定向选项。
三、确定后到此就完成了IIS服务器上面zhanhelp.com做301永久重定向到www.lezsc.com的工作。
注意问题:“上面输入准确的URL(X)”这个选项建议不要选。
1、不选的结果是:当输入zhanhelp.com转到了www.lezsc.com,当输入www.lezsc.com/edu/时,转到了www.lezsc.com/edu/。
2、选上的结果是:当你输入zhanhelp.com或者zhanhelp.com/edu/都会转到www.lezsc.com。
如果是新站或者新域名,只是为了规范标准化URL,把不带www的转到带www的或者其他没有用过的域名转到正在使用的域名,到此设置就结束了。但是如果你做的域名已经做过网站,想把权重传递或者转移给新网站(域名),还需要继续下面的步骤才算真正的完成。
四、勾选“上面输入准确的URL(X)”这个选项
五、重定向网址后面多输入$S$Q字符
$S 的意思是将请求的URL 的后缀传递给新的URL。后缀是用重定向的URL 代替之后,初始URL 中所保留的部分。
如果未设置 EXACT_DESTINATION 标志,则结果目标URL 的名称将具有所请求文件的名称(作为文件夹名称)以及文件名本身。
$Q的意思是将初始URL 中的参数(如 querystring 参数)传递至新的 URL,包括问号(?)。
如果不加上$S$Q字符的话,内页的301都会跳转到首页,加上$S$Q字符的目的就是内页也能准确的跳转到新域名的对应内页。
这样IIS6服务器上301重定向就全部完成了,IIS7.0 和 IIS7.5也是类似的设置,但 IIS7.5使用参数 $S,然后勾选重定向到确切目标。现在可以使用站长工具里面的http状态码查询,检查下结果看看是否设置正确,结果是否为301重定向,如果不正确就返回来检查看看看是否那步存在问题的导致。
|
|