我使用 IIS 7 URL 重写模块 2 将我的 .htaccess 文件转换为 web.config。
在我的 apache 服务器上使用 .htaccess 时,一切正常。然而,当我在我的 IIS 7 服务器上使用我的 web.config 时,一切都变得糟糕透顶。
我有 3 个管理页面:addcharacter.php、deletecharacter.php、editcharacter.php
代码是:
<li><a href='admin/addcharacter' title='Add Character'>Add Character</a></li>
<li><a href='admin/deletecharacter' title='Delete Character'>Delete Character</a></li>
<li><a href='admin/editcharacter' title='Edit Character'>Edit Character</a></li>
问题出在哪里,一旦我转到第一个链接:
www.mywebsite/admin/addcharacter - 第一次工作正常
如果我切换到另一个链接(不管它是什么链接),它会再次附加管理员
www.mywebsite/admin/admin/目标页面
我认为它与 web.config 文件有关,因为这是唯一的区别。
这是我的配置文件的一部分:
<rule name="Imported Rule 9">
<match url="^logout$" ignoreCase="false" />
<action type="Rewrite" url="logout.php" />
</rule>
<rule name="Imported Rule 10">
<match url="^admin$" ignoreCase="false" />
<action type="Rewrite" url="admin.php" />
</rule>
<rule name="Imported Rule 11">
<match url="^admin/([A-z][a-z]+)/?$" ignoreCase="false" />
<action type="Rewrite" url="admin.php?action={R:1}" appendQueryString="false" />
</rule>
</rules>
</rewrite>
有任何想法吗?