Codeigniter несколько приложений, с подстановочными поддоменами, mod_rewrite переназначение поддоменов в .php - PullRequest
0 голосов
/ 15 февраля 2012

У меня есть проект codeigniter, структурированный так:

httpdocs/
  /application/
    /ggg/
      config/
      controllers/
      models/
      libraries/
      views/
      ...
    /sgaz/
      config/
      controllers/
      models/
      libraries/
      views/
      ...
    /index/
      config/
      controllers/
      models/
      libraries/
      views/
      ...
  /system/
  index.php

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

Я знаю, что вы можете создавать несколько приложений и использовать несколько (. *). Php файлов для каждого приложения (IE: ggg.php, sgaz.php, index.php). Но возможно ли иметь один файл index.php и использовать mod_rewrite для перенаправления вызовов из поддоменов в соответствующие приложения env? IE: http://ggg.mapitusa.com/user/login перенаправляет (без htaccess) на http://mapitusa.com/index.php/ggg/user/login?

Спасибо!

1 Ответ

0 голосов
/ 15 февраля 2012

Попробуйте добавить следующее в файл .htaccess в корневом каталоге вашего сайта.

RewriteEngine on
RewriteBase / 

RewriteCond %{HTTP_HOST} ^([^\.]+)\.mapitusa\.com$ [NC] 
#if not existing file or directory
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d
#rewrite to index.php
RewriteRule ^ index.php/%1%REQUEST_URI] [L] 

Если вы хотите, чтобы URL-адрес в адресной строке изменился на http://mapitusa.com/index.php/ggg/user/login?, замените RewriteRule выше на

RewriteRule ^ http://mapitusa.com/index.php/%1%REQUEST_URI] [L,R=301] 
...