我使用 IIS7 的 URL 重写模块 - 因为 URL 重写了几个静态文件。
基本上我将 /pretty-url 映射到 /real-file-name.html
到目前为止,这很简单。
但是在将查询字符串添加到漂亮的 url 之后,它会抛出 404 状态代码。到目前为止,我还没有找到任何解决此问题的方法。有什么建议,还是我做错了什么?
这是配置:
<rewriteMaps>
<rewriteMap name="CoolUrls">
<add key="/pretty-url" value="/real-file.html" />
... and so on ...
</rewriteMap>
</rewriteMaps>
和:
<rules>
<clear />
<rule name="Rewrite rule for CoolUrls" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{CoolUrls:{REQUEST_URI}}" pattern="(.+)" />
</conditions>
<action type="Rewrite" url="{C:1}" appendQueryString="true" />
</rule>
</rules>
任何带有查询的请求(? 标记后的任何参数)都以 404 状态码结束。