7

我正在为 PHP 实现 Slim 框架,一切似乎都运行良好。但是,我可以让它工作的唯一方法是将 /index.php 放在 URL 中,如下所示:

http://www.example.com/index.php/members/1

我希望它像这样工作:

http://www.example.com/members/1

我觉得这与我的 .htaccess 有关系,但我不确定。这是我的.htaccess:

RewriteCond %{REQUEST_FILENAME} !-f
# RewriteRule ^ ./index.php [QSA,L]
RewriteRule ^ . [QSA,L]
4

3 回答 3

5

恢复注释的 ( #) 行并删除另一行应该会有所帮助。当你下载 Slim Framework 时,它最初在 .htaccess中也有这个。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ ./index.php [QSA,L]

另外,你应该学习编写重写规则,因为没有它你不会走得太远。

于 2012-07-19T21:22:18.980 回答
4

我认为这个答案来晚了,但是按照这个链接http://docs.slimframework.com/routing/rewrite/
的信息, 我需要将AllowOverride All语句添加到我的虚拟主机配置中,这对我有用。

于 2013-01-05T09:20:55.183 回答
0

检查您的虚拟主机并全部允许OverRide。

   RewriteEngine On
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteRule ^ /index.php [QSA,L]
于 2013-07-22T12:17:01.090 回答