Прежде чем вы скажете мне перейти на проблему с несколькими приложениями CodeIgniter .htaccess , выслушайте меня.
Причина, по которой я говорю, потому что моя проблема, похоже, почти такая же, как и эти плакаты. Моя структура каталогов:
application/ admin/ app/ .. .htaccess admin.php index.php
Правила htaccess:
RewriteEngine On RewriteBase /dev/ RewriteCond %{REQUEST_URI} ^system.* RewriteRule ^(.*)$ /index.php?/$1 [L] RewriteCond %{REQUEST_URI} ^application.* RewriteRule ^(.*)$ /index.php?/$1 [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^admin$ admin\.php [L,QSA] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^admin\/(.*)$ admin\.php/$1 [L,QSA] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index\.php/$1 [L,QSA]
По сути, мне нужно:
введите в example.com/admin – URL-адрес хранит папку администратора и перенаправляет пользователя на admin.php
введите example.com/admin/controller/method – то же, что указано выше
введите example.com/anything_else – пользователь будет перенаправлен в приложение вместо администратора (index.php)
При тестировании человека в htaccess вышеупомянутого сообщения, с которого мои по существу копируются, в онлайн-тесте два правила, связанные с URI с «admin» в нем, по какой-то причине не передаются. Я могу получить admin (не ^ admin $), чтобы работать как шаблон (согласно тестеру).