Windows Server 2008 R2上的IIS。
我有以下内容(由URL重写2.0生成):
<rule name="RewriteUserFriendlyURL1" stopProcessing="true">
<match url="^/([^/]+)/?$" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="?p={R:1}" appendQueryString="true" logRewrittenUrl="true" />
我认为这会导致
将被插入:
任何人都可以看到它的错误吗?它只是给出了404错误。
我还尝试了一个网址重定向规则并且工作正常,因此我知道该模块正在运行。
答案 0 :(得分:1)
您的解决方案是正确的,但与URL匹配的正则表达式不应以斜杠开头。以下作品:
<rule name="RewriteUserFriendlyURL1" stopProcessing="true">
<match url="^([^/]+)/?$" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="?p={R:1}" appendQueryString="true" logRewrittenUrl="true" />
</rule>
希望这有帮助。