我正在使用web.config文件重写我的网站
唯一的规则是
<rule name="id">
<match url="([_0-9a-z-]+)" />
<action type="rewrite" url="default.asp?id={R:1}">
</rule>
代码工作正常,但问题是当页面从另一个文件夹中调用图像或CSS或JavaScript等文件时根本不起作用。 我该如何避免这个问题?
答案 0 :(得分:0)
您需要在规则中添加一些条件才能在网址与文件或目录不对应时才能使用。这是URL重写的关键之一。
<rule name="id">
<match url="([_0-9a-z-]+)" />
<action type="Rewrite" url="default.asp?id={R:1}" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
</rule>