我已经工作了几个小时,现在试图让它工作。我有一个 CodeIgniter 网站,它曾经在运行良好的 Apache 服务器上。为了隐藏 index.php,我使用了 Apache URL Rewriter 作为 URL。出于某种原因,我无法让它在 IIS 上运行。我用谷歌搜索了它并想出了几个不同的选项,但有些要么不起作用,要么将我重定向到我的根目录。
我正在尝试像这样重写 URL
http://domain.com/v2.3.1/index.php/test
以下是我在web.config
文件中的规则:
<rewrite>
<rules>
<rule name="Clean URL" 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="index.php/{R:1}" appendQueryString="true" />
</rule>
</rules>
</rewrite>
当前配置会将我送回我的根目录。我的网站位于以下示例 URL:
http://domain/v2.3.1
- 这将带我到我的主页
然而
http://domain/v2.3.1/test
- 会带我回去,http://domain
但网址永远不会改变http://domain/v2.3.1/test