Codeigniter, домен на определенную область сайта
Я не очень опытный программист, и я использую CodeIgniter во второй раз.
Предположим, у меня есть www.domain1.com - ... Поэтому у меня будет, скажем, 3 контроллера /area1, /area2, /area3. Пользователи могут получить к ним доступ как www.domain1.com/area1 etc. если я установлю базовый URL как www.domain1.com - ... Но моя проблема в том, что клиент хочет определенную область интернета, скажем area2, работающую как микросайт, в своем собственном домене, поэтому он хочет получить доступ к area2 с www.domain2.com.
Я не знаю как получите эту работу с CodeIgniter. Предположим, он регистрирует www.domain2.com и установите его, указывая на тот же DNS, сервер и т. д. Как я могу получить CodeIgnitor для выполнения контроллера area2, когда URL www.domain2.com доступ есть?
возможно изменение $config['base-url']
? Маршрут? .htaccess
? Пожалуйста, если вы решили это, примеры задействованного кода были бы весьма признательны.
Edit: я поставлю пример сайта, который я хочу получить.
у меня есть одна нормальная установка CodeIgniter (внешний хост, я не могу получить доступ httpd.conf
) он находится на одной машине, и корень сайта должен быть доступен www.domain1.com
все домены вне зарегистрированных. Поэтому у меня есть домашний контроллер, который показывает мне вид главной страницы. И предположим, что сайт имеет 3 области / area1, /area2 / area3, с их соответствующими контроллерами, отображающими эти области.
мой клиент хочет подчеркнуть одну из областей, ту, которую показывает контроллер /area2, и он хочет использовать другой домен для этой области, www.domain2.com
что я могу сделать, чтобы при просмотре пользователем www.domain2.com, CI перенаправляет их на www.domain1.com/area2? Могу ли я, например, изменить $config['base_url']
в соответствии с полученным URL-адресом, или это невозможно? Мне нужно изменить ?
4 ответов
после долгих поисков, я нашел решение, которое, кажется, работает, очень легко быть честным:
изменить routes.php
:
if ($_SERVER['HTTP_HOST']=="www.domain2.com") {
$route['default_controller'] = "area2";
}
нет необходимости переписывать мод.
вот полезная ссылка.... http://www.askaboutphp.com/88/codeigniter-setting-up-multiple-sites-on-one-install.html Никогда не делал этого сам, но, похоже, это способ сделать это без двух установок ci. Удача.
первое решение, которое приходит мне на ум, - использовать Apache mod_rewrite, но, насколько я знаю, это будет работать только для внутренних перенаправлений (т. е. ресурсов, находящихся на одном сервере/домене).
Как насчет использования iframe? Вы могли бы настроить domain2.com Домашняя страница с полностраничным iframe, который принимает его содержимое из domain1.com/area2.