Codeigniter 3.0 不适用于 Bluehost

Codeigniter 3.0 not working on Bluehost

当我在本地服务器上 运行 Codeigniter 3.0 应用程序时,它工作正常。但是,当我将它上传到Bluehost时,它不起作用。

Codeigniter 本身正在工作,但我得到的是 Codeingiter 404 而不是 Apache 404 - 页面获得样式等。

我认为问题与 Codeigniter 3.0 和 Bluehost 有关,因为我向 BH 上传了 2 个不同的应用程序。

当我使用 Codeigniter 2.x 时,一切正常。

希望以下 .htaccess 对您有用:

RewriteEngine on
RewriteCond  !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/ [L,QSA]

从 CodeIgniter 3.0 开始,所有 class 文件名(库、驱动程序、控制器和模型)必须以 Ucfirst-like 方式命名,换句话说 -他们必须以 大写字母 .

开头

控制器:

application/controllers/welcome.phpapplication/controllers/Welcome.php

型号:

application/models/misc_model.phpapplication/models/Misc_model.php

来源:Classes file naming Conversion in CodeIgniter

Note that this DOES NOT affect directories, configuration files, views, helpers, hooks and anything else - it is only applied to classes.

You must now follow just one simple rule - class names in Ucfirst and everything else in lowercase.

.htaccess应该是

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php/ [L] 
</IfModule>