我正在为两个应用程序(公共和管理应用程序)使用CodeIgniter.文档结构的重要元素是:
/admin
/admin/.htaccess
/admin/index.html
/application
/application/admin
/application/public
/system
.htaccess
index.php
Run Code Online (Sandbox Code Playgroud)
/admin/.htaccess文件如下所示:
DirectoryIndex index.php
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php/$1 [L,QSA]
Run Code Online (Sandbox Code Playgroud)
/admin/index.php有以下更改:
$system_folder = "../system";
$application_folder = "../application/admin"; (this line exists of course twice)
Run Code Online (Sandbox Code Playgroud)
/application/admin/config/routes.php包含以下内容:
$route['default_controller'] = "welcome";
$route['admin'] = 'welcome';
Run Code Online (Sandbox Code Playgroud)
欢迎是我的默认控制器.
当我调用域/管理员时,我收到404 Page Not Found错误.当我调用Domain/admin/welcome时,一切正常.在调试日志中,我收到以下错误消息:
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 …Run Code Online (Sandbox Code Playgroud) 我在codeigniter中遇到了一个不同的问题.
当我尝试访问我网站中的视频页面时,它将重定向到404.shtml页面.但是cvideos.php文件存在于我的控制器文件夹中.
如果我像这样访问http://域名/视频,那么它将被重定向到这样//domain-name/500.shtml
如果我像这样访问同一页面//域名/视频/ myvideos,那么它将被重定向到这样//domain-name/404.shtml
此外,如果我将控制器名称从视频更改为其他名称,如视频,它可以正常工作.任何人都可以告诉wats这个问题.
我在.htaccess中使用这一行也只是为了测试.但没用.
RewriteRule ^ videos/$ index.php/videoss/[L]