我最近在本地机器上为我的开发工作设置了一个 .dev TLD。但一直使用 localhost/example 进行我的开发。因为我使用“http://my.ip/example”来展示和测试不同机器上的工作,所以我很想继续让它正常工作。
现在我遇到了以下问题:
example.dev 指向 localhost/example,它工作正常。尽管我的 htaccess 似乎需要 1 个差异才能使其正常工作。
RewriteRule ^(.+)$ /index.php/$1 [L,QSA]
适用于 .dev TLD。尽管
RewriteRule ^(.+)$ index.php/$1 [L,QSA]
(注意 index.php 之前缺少的斜杠)需要保持它在 localhost/example 上工作(因为前面的 / 使它看起来在 localhost 中)。
有没有人知道如何使我的 .htaccess 或脚本足够通用,以便在这两种情况下都能正常工作?
更新:完整的 htaccess
Options +FollowSymLinks
IndexIgnore */*
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ /index.php/$1 [L,QSA]
更新 2:来自 Apache 的错误日志。
[Mon Oct 22 12:50:46 2012] [error] [client 127.0.0.1] Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary.