我是 CI 的新手,我正在尝试从 URL 中删除烦人的“index.php”。这是我正在使用的 .htaccess:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1 [L]
如您所见,我必须使用QUERY_STRING
才能使新 URL 工作(注意 index.php 后面的问号)。当我尝试使用PATH_INFO
(即没有问号)时,我只会得到No input file specified
错误。
这很好,QUERY_STRING
如果必须的话我可以使用,但我不明白这个问题,因为我PATH_INFO
在开始玩重写之前使用得很好 - 即默认的“example.com/index.php /controller/function" 正在工作,并且使用 PATH_INFO AFAIK。
有谁知道为什么 htaccess 在我的示例中会破坏 PATH_INFO ?对不起这个愚蠢的问题。