Правила перезаписи .htaccess для поддоменов - PullRequest
8 голосов
/ 14 декабря 2008

Я использую codeigniter в качестве основной установки на основном домене. Я создал поддомен и папку с именем live, например, live.domain.com отображает на общедоступный / прямой эфир. Однако в общественных местах я использую codeigniter.

У меня теперь есть динамический URL-адрес codeigniter:

http://domain.com/api/

который я хочу сопоставить с моим поддоменом:

https://live.domain.com

Итак, собираемся:

https://live.domain.com/api/functioname

будет использовать скрипт:

http://domain.com/api/apifunctioname

и, возможно:

http://domain.com/api/apifunctioname/parameter1/parameter

Все на одном сервере, поэтому перенаправления не нужны.

У кого-нибудь есть идеи, какие правила переписывания использовать?

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{HTTP_HOST} ^live\.domain\.com [NC]
RewriteRule (.+)$ "http://domain.com/api/$1" [L]

Вышеприведенное прекрасно работает как переписывание, но перенаправляет на http://domain.com/api/functionname, вместо этого я хочу, чтобы он направлялся; так что при переходе на:

https://live.domain.com/api/functioname

Он остается на этом URL, но использует скрипт

http://domain.com/api/functionname

Большое спасибо,

Ice

Ответы [ 2 ]

10 голосов
/ 14 декабря 2008

Как что-то вроде следующего:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^live\.domain\.com$ [NC]
RewriteRule (.+)$ "https://domain.com/api/$1" [L,P]
4 голосов
/ 24 марта 2011

Просто добавьте index.php, см. Ниже

RewriteEngine On
RewriteCond %{HTTP_HOST} ^live\.domain\.com$ [NC]
RewriteRule (.+)$ "https://domain.com/index.php/api/$1" [L,P]
...