首先,解释下什么是资源的永久重定向,通俗简单理解下,当你在浏览器中输入sina.com.cn(新浪首页)的时候,网址是不是变成www.sina.com.cn了?再说一些163.com、qq.com都会变成www.xxx.com等的样式,使用的就是资源的永久重定向,只不过他们使用的不是IIS。这里只来说说IIS中使用永久重定向的参数的方法。下面将说下IIS6.0中使用重定向的方法。
前提假设,为了简化输入这里假设两个网址:AA-代表aa.com,BB-代表www.aa.com
一、如何设置重定向的方法?
1.打开IIS管理器;
2.展开“网站”,然后选择一个网站,右键点击选择“属性”,然后点击“主目录”选项卡;
3.在“主目录”选项卡中你会看到“此资源的内容来自:”然后下面是3个选项,分别是:
“此计算机上的目录(D)”;
“另一台计算机上的共享(S)”;
“重定向到URL(U)”
4.选择“重定向到URL(U)”,下面的选项会跟着变化
会出现“重定向到(C):”的输入框,这里就是要输入资源重定向网址的地方。
二、举例子说明重定向的方法
1.目标:将AA重定向到BB
2.方法:在IIS中分别设置AA和BB的主机头,按照“一”中说明的方法将AA里“重定向到URL(U)”里面输入BB的网址就,然后选择上“上面输入的准确URL”和“资源的永久重定向”(最好选择上,不然搜索引擎会以为你在作弊,HTTP返回值也会被正确响应为301了),这样可以完成AA重定向到BB。
3.测试:在浏览器中输入AA,看下是不是变成BB了?
三、带参数的AA如何重定向到BB
如果按照“二”中的方法测试
http://aa.com/view.asp?id=1&host=www.by84.com这个网址的时候,浏览器会访问www.aa.com,后面的参数是不会重定向的,那么如何带参数重定向?继续往下看吧
1.目标:将http://aa.com/view.asp?id=1&host=www.by84.com重定向到http://www.aa.com/view.asp?id=1&host=www.by84.com
2.方法:这个时候要在“重定向到URL(U)”里面输入参数了,输入的参数在本文结尾归纳,在输入框里面输入http://www.aa.com$S$Q
3.测试:这个时候再次输入http://aa.com/view.asp?id=1&host=www.by84.com的时候看看是不是正确的被重定向到http://www.aa.com/view.asp?id=1&host=www.by84.com了?
四、重定向的参数
$S-将请求的 URL 的后缀传递给新的 URL。后缀是用重定向的 URL 代替之后,初始 URL 中所保留的部分。如果未设置 EXACT_DESTINATION 标志,则结果目标 URL 的名称将具有所请求文件的名称(作为文件夹名称)以及文件名本身。
$P-将初始 URL 中的参数(如 querystring 参数)传递至新的 URL,不包括问号 (?)。
$Q-将初始 URL 中的参数(如 querystring 参数)传递至新的 URL,包括问号 (?)。
$V-传递请求的 URL,不包括服务器名和任何参数。要包含参数,可使用 $P 或 $Q 变量及 $V 变量。如果未设置 EXACT_DESTINATION 标志,则结果目标 URL 的名称将具有所请求文件的名称(作为文件夹名称)以及文件名本身。
参数还有很多,基本上最常用的就是$S和$Q,任意网址想要实现301的永久重定向只需设置$S和$Q就可以了。
文章举例子说明了IIS中使用重定向实现301的方法,例子中的网址,如果这些网址给您带来不便,请告之本人会尽快删除。