0

我正在尝试学习fuelPHP,并且我具有CI背景。我正在使用本教程,以便我可以熟悉这一点。

http://net.tutsplus.com/tutorials/php/getting-started-with-the-fuel-php-framework/

我的问题在第 2 步。当我访问我的简单控制器时

http://localhost/fuel/public/index.php/hello 

我收到 404 错误。

*fuel 是我本地主机上新安装的fuelPHP 的目录。

当我将其设置为我的默认路由时,控制器工作。

新版本中是否有什么变化导致了这一点?

这是我在 /public/ 文件夹上的 .htaccess。

<IfModule mod_rewrite.c>
    RewriteEngine on

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>

谢谢。

4

1 回答 1

1

像这样安装 FuelPHP 会让你自己变得非常复杂。

它的设计方式是“公共”文件夹是您的网络服务器文档根目录,这意味着所有燃料都在您的文档根目录之外,而 .htaccess 直接在您的文档根目录内。

通过不仅将其完全安装在文档根目录中,而且还安装在该文档根目录的子文件夹中,您需要修改重写规则。从添加开始

RewriteBase /fuel/public

公开给那个人,看看是否有帮助。此外,此 .htaccess 是为“标准”apache 类型安装而制作的。如果你运行其他任何东西,你可能需要一个不同的 .htaccess。例如,如果您使用 fcgi,从 1.4/develop 存储库获取 .htaccess,它对您的网络服务器类型具有更高的容错性。

最后一句话:你不应该使用 localhost 作为主机名。在许多 RFC 中,这是一个非法名称,其中一个是记录 cookie 使用的名称。如果您使用“localhost”,您将在某些浏览器(版本)中遇到各种会话问题。相反,设置虚拟主机(无论如何都是子文件夹更好的解决方案),并使用像“mymachine.local”这样的主机名。

于 2012-10-31T19:33:31.227 回答