【问题标题】:Rewrite - asp classic重写 - asp 经典
【发布时间】:2015-07-13 04:38:00
【问题描述】:
我正在使用 web.config 文件来重写我的网站
唯一的规则是
<rule name="id">
<match url="([_0-9a-z-]+)" />
<action type="rewrite" url="default.asp?id={R:1}">
</rule>
代码工作正常,但问题是当页面从另一个文件夹调用图像或文件(如 CSS 或 JavaScript)时,它根本不起作用。
我怎样才能避免这个问题?
【问题讨论】:
标签:
iis
asp-classic
rewrite
【解决方案1】:
您需要在规则中添加一些条件才能仅在 url 与文件或目录不对应时起作用。这是 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>