拜托,我有这个文件夹:
root/teste_seo/script.asp
而是使用网址:
www.mysite.com/teste_seo/script.asp
我需要使用IIS重写这个URL:
www.mysite.com/script.asp
我尝试使用此链接中的规则但不起作用:
IIS 7.5 URL Rewrite - Rewrite a Folder from an URL
请问,我该如何写这条规则?
PS。:对于teste_seo文件夹中的任何* .asp文件。
答案 0 :(得分:0)
以下规则可以解决问题:
<rule name="teste_seo" stopProcessing="true">
<match url="^script.asp" />
<action type="Rewrite" url="/teste_seo/script.asp" />
</rule>
然后链接到www.mysite.com/script.asp
OP发表评论后编辑:
如果是这样,只要您在文档的根目录中有脚本文件的副本,就可以使用以下规则:
<rule name="teste_seo" stopProcessing="true">
<match url="^teste_seo/([^\.]+\.asp)" />
<action type="Redirect" url="/{R:1}" />
</rule>
如果您需要所有脚本文件指向可以使用的相同文件:
<rule name="teste_seo" stopProcessing="true">
<match url="^teste_seo/([^\.]+\.asp)" />
<action type="Redirect" url="/script.asp" />
</rule>
澄清后再次编辑:
这两条规则应该是您需要的修复:
<rule name="teste_seo_redirect" stopProcessing="true">
<match url="^teste_seo/([^\.]+\.asp)" />
<action type="Redirect" url="/{R:1}" />
</rule>
<rule name="teste_seo_rewrite" stopProcessing="true">
<match url="^([^\.]+\.asp)" />
<action type="Rewrite" url="/teste_seo/{R:1}" />
</rule>