这个问题可能听起来很奇怪,但是给定article,绝对可以使用重写模块来执行重定向,就像重定向模块一样。两者都能够发出永久重定向(301)。
有一个question要求区别,但它谈到了重写模块用于纯重写而非重定向。另一个post说明了这一点,但似乎没有得到足够的答案。
因此,我的问题是:这些模块之间有什么区别?在重定向时,哪一个优于另一个?
答案 0 :(得分:3)
注意:此答案不能回答IIS重定向(httpRedirect)与URL重写模块重定向之间的区别,而是重写URL重写模块(重定向与重写)之间的区别。
如果您尝试将复杂的URL(带有查询字符串)隐藏到更友好的URL,则可以使用“重写”,因为浏览器/搜索引擎将始终看到200OK,并假设内容来自请求的原始URL。
如果您尝试向新网址的搜索引擎/用户指示资源更改,那么当您发送301状态代码表示资源已从原始位置移至此新位置时,重定向即可。
IIS重定向:
IIS重写:
请求处理(REDIRECT):www.mysite.com/abc重定向到www.mysite.com/pqr
请求处理(REWRITE):www.mysite.com/abc,您想指向www.mysite.com/pqr