Несколько приложений Codeigniter: удалить index.php/controller из URL

Я новичок в CodeIgniter и пытаюсь понять основы и, возможно, некоторые дополнительные методы для установки приложения на основе MVC. Через некоторое время я подумал, что могу попробовать установить панель администратора и создать вторую папку в качестве приложения администратора.

Это моя структура папок:

www.domain.com
    --frontend
    --admin

В каждой папке есть набор приложений с собственным файлом .htaccess. Ниже приведен файл .htaccess для административной части.

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /admin/
RewriteCond $1 !^(index.php|resources|robots.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]    
</IfModule>

Текущий рабочий URL-адрес www.domain.com/admin/index.php/admin/posts, и я безуспешно пытаюсь изменить его на www.domain.com/admin/posts. Итак, как мне удалить /index.php/admin из URL-адреса.

$config['base_url'] устанавливается соответственно для каждой стороны (admin/frontend), а index.php по умолчанию также имеет значение null, $config['index_page'] = '';

Это проблема, потому что у меня 2 разных приложения или просто плохая конфигурация? Как лучше всего использовать несколько приложений на одном сайте?

Надеюсь, я не продублировал какой-либо пост, и если да, пожалуйста, не ненавидьте и попытайтесь мне помочь. Я глубоко благодарен всем вам.


person Dinca Adrian    schedule 01.06.2015    source источник
comment
Сколько раз мне приходилось добавлять удаление index.php/controller не только index.php. Почему люди даже не читают пост и ставят минусы. Я пробовал несколько исправлений из этих сообщений, и ни одно не сработало...   -  person Dinca Adrian    schedule 01.06.2015


Ответы (1)


Попробуй это

в config.php

$config['base_url'] = '';
$config['index_page'] = '';

в .htacess

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L] 
</IfModule>

ИЗМЕНИТЬ 01

<link href="<?php echo base_url(); ?>css/style.css" rel="stylesheet" />
person Abdulla Nilam    schedule 01.06.2015
comment
Мне нужен $config['base_url'] = ''; быть установлен, потому что у меня есть файлы css/js, связанные в представлениях, и данный код уже был протестирован, никакого эффекта. Спасибо за ответ. - person Dinca Adrian; 01.06.2015
comment
вам нужно загрузить css?? Итак, проблема с загрузкой CSS ?? - person Abdulla Nilam; 01.06.2015
comment
Нет проблем. Я просто хочу улучшить приложение, удалив файл index.php/controller. CSS загружается вызовом $config['base_url'] . '/css/style.css'. И, изменив $config['base_url'] я не смогу получить css/js... Мне нужно другое решение только с .htsccess или с идеями исправления пути css... - person Dinca Adrian; 01.06.2015
comment
‹?php эхо base_url(); ?› ничего не вернет, поэтому путь css/style.css недействителен. вот как я его сейчас использую... - person Dinca Adrian; 01.06.2015
comment
пример <link href="<?php echo base_url(); ?>css/bootstrap.css" rel="stylesheet" />. Нет / перед css - person Abdulla Nilam; 01.06.2015