我有以下问题。
我已经在 sub.domain.com 中创建了主要的codeigniter网站,并且还在 sub.domain.com/admin中创建了另一个codeigniter应用程序(管理员)。 ..
*请注意,如果有人提到我,我不会使用HMVC模型...
问题是,当我尝试访问/ admin网址时,出现错误404重定向问题。
这是我的主要文件,还有一些我要提及的其他内容:
.htaccess 文件:
Options -Indexes
Options +FollowSymLinks
# Indexes default
DirectoryIndex index.php
<IfModule mod_rewrite.c>
RewriteEngine On
#RewriteBase /admin
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php/$1
</IfModule>
我的 routes.php 文件:
/**
* Users login - logout
*/
$route['login'] = 'users/users/login';
$route['logout'] = 'users/users/logout'; //Controller located in subfolder
$route['users'] = 'users/users';
$route['users/(:any)'] = 'users/users/$1';
/**
* Redirect any URI after default url
*/
$route['pages/(:any)'] = 'pages/$1';
/**
* Other routes
*/
$route['(:any)'] = 'pages';
$route['default_controller'] = 'pages';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
我的 header.php 文件中也有此文件,如果未登录等,我会在该文件中重定向用户的登录名等。
if (!$this->ion_auth->logged_in() && $this->uri->segment(1) !== 'login') {
redirect('login');
} elseif( $this->ion_auth->logged_in() && !$this->ion_auth->is_admin($this->ion_auth->get_user_id()) ){
redirect('logout');
}
应用程序/控制器 的结构类似于:
Controllers
-Customers
--Customers.php
-Users
--Users.php
-Pages.php
etc..etc..
我已经尝试了所有方法(.htaccess,RewriteBase / admin等。),但仍然无济于事。
有什么想法吗?谢谢...
答案 0 :(得分:0)
尝试一下:
在主应用程序中.htaccess:
AddDefaultCharset UTF-8
Options -Indexes
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)admin(.*)$ /admin/index.php$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php/$1
</IfModule>
/ p中的.htaccess:
AddDefaultCharset UTF-8
Options -Indexes
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) /admin/index.php/$1
</IfModule>