我为两个应用程序(公共和管理应用程序)使用CodeIgniter。 文档结构的重要内容是:未找到CodeIgniter 404页面,但是为什么?
/admin
/admin/.htaccess
/admin/index.html
/application
/application/admin
/application/public
/system
.htaccess
index.php
的/admin/.htaccess文件看起来是这样的:
DirectoryIndex index.php
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php/$1 [L,QSA]
的/admin/index.php有以下变化:
$system_folder = "../system";
$application_folder = "../application/admin"; (this line exists of course twice)
而/application/admin/config/routes.php包含以下内容:
$route['default_controller'] = "welcome";
$route['admin'] = 'welcome';
欢迎使用我的默认控制器。
当我调用域/管理员时,出现404页未找到错误。当我打电话给域/管理员/欢迎一切正常。在调试日志我收到以下错误信息:
DEBUG - 2010-09-20 16:27:34 --> Config Class Initialized
DEBUG - 2010-09-20 16:27:34 --> Hooks Class Initialized
DEBUG - 2010-09-20 16:27:34 --> URI Class Initialized
ERROR - 2010-09-20 16:27:34 --> 404 Page Not Found --> admin
古怪足够此设置完美的作品在我的本地MAMP安装(与LOCALDOMAIN /管理/),但是当我发布和测试它的“活”服务器,我只是得到404错误。
任何想法?我究竟做错了什么? 谢谢 C.
只是一个想法,也许是活的服务器不运行mod_rewrite?现场服务器只给你404或偶尔的服务器? – Fanis 2010-09-20 16:31:31
它似乎正在工作 - 我只是测试它与捕获所有非www域和重定向到google.com。 404错误肯定是由CI生成的(因为他们使用CSS)。 – Joseph 2010-09-21 05:29:56
只是想发布,如果你正在运行一个全新的Codeigniter 3安装,并且你的主机文件夹的名称中有一个空格,它将提供一个404.版本3.0.0 – 2015-06-10 19:32:49