I я использую CodeIgniter для двух приложений (общедоступного и административного). Важными элементами структуры документа являются:
/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 Page Not Found. Когда я вызываю домен / 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 Page Not Found --> admin
Как ни странно, эта установка отлично работает на моей локальной установке MAMP (с localdomain / admin /), но когда я публикую и тестирую ее на «живом» сервере, я просто получить 404 ошибки.
Есть идеи? Что я делаю не так? Спасибо C.