当我将目的地指向根目录时,我在让重写过程正常工作时遇到了一些麻烦。
如果我指向 /page/ 目标 t 似乎可以正常工作,但如果我指向 / 它不会。以下是我的 web.config 中的内容
<rewrite>
<rewriteMaps>
<rewriteMap name="StaticRewrites">
<add key="/1" value="/article.aspx?id=1&title=some-title" />
<add key="/random_page.htm" value="/" />
<add key="/friends.htm" value="index.php" />
<add key="/page_2.htm" value="/index.php" />
<add key="/some_other_page.htm" value="/some_other_page/" />
<add key="/some_page_test.htm" value="/test21.php" />
<add key="/2nd_page_test.htm" value="/test.txt" />
<add key="/3rd_page_test" value="/test1.htm" />
<add key="/4th_page_test.htm" value="article.aspx?id=1&title=some-title" />
<add key="/root_page_again.htm" value="/" />
</rewriteMap>
</rewriteMaps>
<rules>
<rule name="Rewrite rule1 for StaticRewrites">
<match url="(.*)" />
<conditions>
<add input="{StaticRewrites:{REQUEST_URI}}" pattern="(.+)" />
</conditions>
<action type="Rewrite" url="{C:1}" appendQueryString="false" />
</rule>
<rule name="WordPress: http://123.123.12.123" patternSyntax="Wildcard">
<match url="*" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="index.php/{R:0}" />
</rule>
</rules>
</rewrite>
第 1 个有效
第 2、3、4 个无效
第 5、6、7、8 和 9 个有效
第 10 个或最后一个无效
我为隐私 IIS 8.5 编辑了一些明显的位置