如何在IIS中redirectURLpath?
在IIS 6.0中,是否有一种简单的方法可以将请求redirect到另一个文件夹,同时保留path的其余部分。
例如
如果我已经从以下内容中移除内容:
mysite.org.uk/stuff
至
stuff.mysite.org.uk/
我是否可以自动redirect特定页面的请求
mysite.org.uk/stuff/countrybriefing/tanzania/travel.html
至
stuff.mysite.org.uk/countrybriefing/tanzania/travel.html
我知道.htaccess可以在Apache中做这样的事情,有没有在IIS中的相当于?
采取从微软Technet 。
在IIS 6.0中redirect网站(IIS 6.0)
当浏览器请求Web站点上的页面或程序时,Web服务器将查找由URL标识的页面并将其返回给浏览器。 在网站上移动页面时,不能始终更正引用该页面的旧URL的所有链接。 为了确保浏览器能够在新的URL上find页面,可以指示Web服务器将浏览器redirect到新的URL。
您可以将一个目录中的文件的请求redirect到另一个目录,另一个Web站点或另一个目录中的另一个文件。 当浏览器以原始URL请求文件时,Web服务器指示浏览器使用新的URL请求页面。
重要
您必须是本地计算机上Administrators组的成员才能执行以下过程或过程。 作为安全最佳实践,请使用不在pipe理员组中的帐户login到您的计算机,然后使用runas命令以pipe理员身份运行IISpipe理器。 在命令提示符处,键入runas / user:Administrative_AccountName“mmc%systemroot%\ system32 \ inetsrv \ iis.msc”。
程序
将请求redirect到另一个Web站点或目录
-
在IISpipe理器中,展开本地计算机,右键单击要redirect的网站或目录,然后单击“属性”。
-
单击主目录,虚拟目录或目录选项卡。
-
在此源的内容应来自,请单击redirect到一个URL。
-
在“redirect到”框中,键入目标目录或网站的URL。 例如,要将目录目录中的所有文件请求redirect到NewCatalog目录,请键入/ NewCatalog。
将所有请求redirect到单个文件
-
在IISpipe理器中,展开本地计算机,右键单击要redirect的网站或目录,然后单击“属性”。
-
单击主目录,虚拟目录或目录选项卡。
-
在此源的内容应来自,请单击redirect到一个URL。
-
在“redirect到”框中,键入目标文件的URL。
-
选中上面input的确切URLcheckbox,以防止Web服务器将原始文件名追加到目标URL。
您可以在目标url中使用通配符和redirectvariables来精确控制如何将原始url转换为目标url。
您也可以使用redirect方法将特定目录中的所有文件请求redirect到程序。 通常,您应该将原始URL中的任何parameter passing给程序,您可以使用redirectvariables来完成这些操作。
将请求redirect到一个程序
-
在IISpipe理器中,展开本地计算机,右键单击要redirect的网站或目录,然后单击“属性”。
-
单击主目录,虚拟目录或目录选项卡。
-
在此源的内容应来自,请单击redirect到一个URL。
在“redirect到”框中,键入程序的URL,包括将parameter passing给程序所需的任何redirectvariables。 例如,要将脚本目录中的所有脚本请求redirect到logging所请求的URL和使用该URL传递的所有参数的日志logging程序,请键入/Scripts/Logger.exe?URL=$V+PARAMS=$P。 $ V和$ P是redirectvariables。
-
选中上面input的确切URLcheckbox,以防止Web服务器将原始文件名追加到目标URL。
按以下方式格式化redirecturl:
stuff.mysite.org.uk$S$Q
$S
会说任何path必须应用到新的URL。 $Q
表示任何参数variables都必须传递给新的URL。
在IIS 7.0中,您必须启用选项Redirect to exact destination
。 我相信在IIS 6.0中也必须有这样的选项。
如果你有负载重新创build,有虚拟目录加载的地方是一个噩梦来维护。 你可以尝试使用ISAPIredirect一个IIS扩展。 然后你重新指挥的所有东西都在一个地方pipe理。
http://www.isapirewrite.com/docs/
它也允许你匹配基于reg exexpression式的模式等。我已经使用了我不得不重新指向100页的页面,并节省了大量的时间。
这里是ISAPI_Rewrite 3的configuration:
RewriteBase /
RewriteCond%{HTTP_HOST} ^ mysite.org.uk $ [NC]
RewriteRule ^ stuff /(.+)$ http://stuff.mysite.org.uk/$1 [NC,R = 301,L]