2013-06-05 5 views
1

у меня есть:Codeigniter mod_rewrite как для корневой и подкаталог

root/.htaccess

RewriteEngine on 
RewriteBase/

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

RewriteRule ^(.*)$ index.php/$1 [QSA,L] 

это работает отлично отправить запрос все (кроме файла и папки) в index.php. Мне нужно, чтобы он работал и в моей подпапке.
У меня есть .htaccess в подкаталоге root/demos/project содержат:

RewriteOptions inherit 

, но не работает.

Я стараюсь это в корне/.htaccess

RewriteRule ^(.*)$ index.php/$1 [QSA,L] 
RewriteRule ^demos/project/(.*)$ demos/project/index.php/$1 [QSA,L] 

не работает.

это:

RewriteRule ^demos/project/(.*)$ demos/project/index.php/$1 [QSA,L] 
RewriteRule ^(.*)$ index.php/$1 [QSA,L] 

получить Внутренняя ошибка сервера 'missconfiguration'

и многие несколько путь, но все, что я пытался, я просто получить эти: 501 (по умолчанию с сервера) и 404 (от МОПС в корне);

Я использую codeigniter как в root, так и в demos/project и просто хочу «скрыть» index.php от обоих, как это сделать правильно?

Спасибо.

ответ

0
RewriteEngine on 
RewriteRule ^(.*)$ /demo/project/index.php?/$1 [L] 

это работает?

Вы также можете просто разместить другой файл .htaccess в своей папке с демо/проектом.

EDIT:

попробовать это:

RewriteEngine On 
RewriteCond %{REQUEST_URI} ^system.* 
RewriteRule ^(.*)$ /demo/project/index.php?/$1 [L] 

edit2:

Если вы получаете 404 не найден страница просто изменить config.php в корневом каталоге/приложение/Config/config.php из следующих функций:

$config['index_page'] = "index.php"; 

к:

$config['index_page'] = ""; 
+0

Внутренняя ошибка сервера 'missconfiguration'. :( – egig

+0

См. Мое редактирование. Работает ли он, когда я удалил запрос 2? –

+0

Все то же самое: '500 ошибка внутреннего сервера'. Я добавил .htaccess в свою подпапку тоже с похожим sintax, все, что я пробовал, я получаю только: 500 или 404. – egig

Смежные вопросы