IIS7.5下301重定向的设置方法(及伪静态后301重定向出错案例)

Freya ·
更新时间:2024-11-13
· 501 次阅读

一、301重定向实施:

我们网站www.b.com原来的域名是a.com,明显差很多,换了域名之后,要做的第一件事自然就是301重定向。 

提醒一点:即使你不是换域名,也应该考虑把“b.com”301重定向至“www.b.com”。 

每个人的环境不一样,因为我们是用云服务器,所以我们实施301重定向相对简单,只要在IIS里直接设置就行了。

但在实施之前,一定要记住:在IIS中为各域名建立独立的站点,做好相应绑定。

比如,你要把“b.com”301重定向到”www.b.com”,就要分别建两个站点,并独立绑定,然后,再在“b.com”的站点上做重定向设置。

下面,是实施步骤

第一步:

选择“HTTP重定向” 

快照1 

第二步:

1、勾选“将请求重定向到此目标”;2、输入目标域名;3、选择“301永久”即可。如下图:
快照2 

第三步:

自然是验证一下是否设置成功: 

1、可以通过下面的工具,输入301重定向前的原域名或网址,看下返回的状态码是否是301;http://tool.chinaz.com/pagestatus/

2、输入301重定向前的原域名或网址,设置正确的话,应转到新域名下相应的网页。(我的问题,就出在这里)

二、伪静态后301重定向出错:

问题:

我在这里碰到了问题,我们伪静态后的网址格式是类似这样的,某体检套餐:http://www.b.com/pkg-detail/ok327a455b6ed8c;

结果301后,访问原地址http://www.a.com/pkg-detail/ok327a455b6ed8c;

却全部变成了原动态网址,如“/pkg/detail.aspx?xxxxxxx”,而且参数全乱,虽然页面返回的状态是301,正确的,但内容已经完全错误,或者是空内容,甚至404。
原因:

经过排查,原来,我在建新域名站点时,直接复制了原来的目录。

原站点的内容仍完全保留,而我们伪静态用的是Global方案,这个原站点的Global.aspx文件在作祟;

估计是,访问时,网址已经先被原站点的Global.aspx处理,后再重定向到新站点,又被新站点的Global.aspx处理了一次,故出错。 解决:

解决很简单了: 把原站点的Global.aspx,或者清空文件,只留个web.cnfig,搞定。

您可能感兴趣的文章:Nginx下301重定向域名的方法小结Apache Rewrite实现URL的301跳转和域名跳转比较详细的win2003 IIS6.0 301重定向带参数的问题解决方法php 301转向实现代码iis下设置301 Redirect 永久重定向的方法php 实现301重定向跳转实例代码HTTP 错误 500.19- Internal Server Error 错误解决方法nginx提示:500 Internal Server Error错误的解决方法HTTP错误500.19解决方法(定义了重复的节点)http状态码汇总及问题经验总结javascript学习笔记(七)Ajax和Http状态码ASP.NET设置404页面返回302HTTP状态码的解决方法http状态码一览表PHP获取访问页面HTTP状态码的实现代码前端获取http状态码400的返回值实例详解HTTP状态码10个常见的HTTP状态码详解



静态 301重定向 伪静态 iis7 方法 重定向 IIS 301

需要 登录 后方可回复, 如果你还没有账号请 注册新账号