Не совсем понятно, о чем вы спрашиваете, но вот выстрел:
Вам необходимо создать файл .htaccess
в корне вашего сайта (то есть в той же папке, в которой находится ваша папка system
). В этом файле:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond $1 !^(index\.php)
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
См. Раздел «Удаление файла index.php» на этой странице: http://codeigniter.com/user_guide/general/urls.html для получения дополнительной информации.
Кроме того, route
, который вы используете, сделает так, что когда вы перейдете к www.site.com
, вы увидите www.site.com/sites/content
.
С URL www.site.com/sites/sitename/content/
, sites
- ваш контроллер, sitename
- метод или функция, и content
будет считаться параметром для функции sitename
- это не будет работать так, как кажется как ты хочешь, но я не могу быть уверен, не увидев твой контроллер.
Возможно, отредактируйте свой вопрос и добавьте свой контроллер (и), и мы можем оказать вам дополнительную помощь.
UPDATE:
1: $config['base_url']
не имеет ничего общего с маршрутизацией или тем, какой контроллер используется, поэтому это затрудняет понимание вашего вопроса.
2: Непонятно, чего вы пытаетесь достичь (извините).
По идее, когда я иду на
www.site.com / сайты / имя_сайта /
контроллер по умолчанию не загружается.
Согласно руководству пользователя CI :
CodeIgniter может сказать, чтобы загрузить
контроллер по умолчанию, когда URI не
настоящее время, как будет в случае, когда только
запрашивается корневой URL вашего сайта. к
указать контроллер по умолчанию, открыть
ваше приложение / config / rout.php
файл и установите эту переменную:
Итак, это означает, что default_controller
используется только , когда отсутствует URI. Другими словами: контроллер по умолчанию применяется только тогда, когда URL-адрес www.site.com, и ни в каком другом случае он не будет использоваться (если вы не используете подпапки в папке контроллеров - см. Ниже).
Если вы пытаетесь сделать так, чтобы каждый из ваших сайтов имел свой собственный контроллер, вы можете использовать подпапки в папке вашего контроллера.
В маршрутах .php:
$route['sites/(:any)'] = "$1";
$route['default_controller'] = "content";
Тогда структура вашей папки:
Итак, у вас есть папка контроллера. В нем создайте папку для каждого сайта. В каждом из этих контроллеров создайте свой контроллер по умолчанию (с именем content.php на изображении выше).
При этой настройке www.site.com/sites/site1
вызовет контроллер по умолчанию (content
) из application/controllers/site1/content.php
и покажет функцию index
этого контроллера.
Если затем вы хотите вызвать другие функции контроллера site1, URL будет выглядеть следующим образом:
www.site.com/sites/site1/content/otherFunction
.
Надеюсь, это поможет.