我尝试找到该问题的解决方案,并找到了一些指南,但似乎都不起作用。
我有以下网址 -http://www.mysite.com/aboutus.html
但是,还有一些其他网站链接到我以前托管的网站,并指向http://www.mysite.com/nw/aboutus.html。我的问题是尝试从 URL 中删除“nw”目录。
我已经在 IIS 中设置了以下 URL 重写,但它似乎没有做任何事情,
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Redirect all to root folder" enabled="true" stopProcessing="true">
<match url="^nw$|^/nw/(.*)$" />
<conditions>
</conditions>
<action type="Redirect" url="nw/{R:1}" />
</rule>
<rule name="RewriteToFile">
<match url="^(?!nw/)(.*)" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
任何见解都将不胜感激。
答案1
能够通过以下方法解决此问题
<rule name="RemoveDirectory">
<match url="nw/(.*)" />
<action type="Rewrite" url="/{R:1}" />
<conditions>
<add input="{HTTP_HOST}" pattern="^www.mysite.com$" />
</conditions>