1

我正在使用 ISAPI_Rewrite v2 在 IIS 6 上删除我的 index.php。这就是重写的工作方式:

http://dev.mysite.co.uk/mypage      => http://dev.mysite.co.uk/index.php/mypage
http://dev.mysite.co.uk/anotherpage => http://dev.mysite.co.uk/index.php/anotherpage

使用 $_SERVER['REQUEST_URI'] 我可以看到实际发生的事情是这样的:

http://dev.mysite.co.uk/mypage      => http://dev.mysite.co.uk/index.php/index.php/mypage
http://dev.mysite.co.uk/anotherpage => http://dev.mysite.co.uk/index.php/index.php/anotherpage

这会导致 404 错误。重写规则包含在 httpd.ini 中,它位于我的子域的根文件夹中。这是我正在使用的规则:

[ISAPI_Rewrite]
RewriteRule ^(.*)$ /index.php/$1 [L]

有谁知道这可能是什么原因造成的?我发现这篇文章描述了同样的问题,但没有答案。

谢谢

4

1 回答 1

1

我猜它只是循环,所以请尝试像这样修复它:

[ISAPI_Rewrite]
RewriteRule /(?!index\.php/.*)(.*) /index.php/$1 [L]
于 2012-08-13T11:12:08.870 回答