2016-04-11 4 views
0

Я строю сайт с двумя основными разделами,перенаправлять субдомен основного домена с HTAccess

поэтому я создал две подобласти:

web1.example.com web2.example.com

так как я строю сайты с codeigniter, я хочу перенаправить на страницу index.php. вот что я сделал:

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^web1.example.com$ [NC] 
RewriteRule ^(.*)$ http://example.com/web1 [R=301,NC,L] 

это работает, как ожидалось, но он изменяет URL в example.com/web1 .. есть ли способ сохранить URL web1.example.com, но все же перенаправлять примеру .com/web1?

Я уже с помощью файла .htaccess:

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteBase/
    RewriteCond %{REQUEST_URI} ^system.* 
    RewriteRule ^(.*)$ /index.php?/$1 [L] 

    RewriteCond %{REQUEST_URI} ^application.* 
    RewriteRule ^(.*)$ /index.php?/$1 [L] 

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

<IfModule !mod_rewrite.c> 
    ErrorDocument 404 /index.php 
</IfModule> 

, когда я вхожу web1.example.com, фактический URL в который должен быть выполнен: example.com/web1, и файл, который будет выполняться в index.php ..

+0

Что ваш ожидаемый результат URL –

ответ

1

Didnt испытано, Modify и попробовать этот

RewriteRule ^([a-zA-Z0-9-/]+).example.com$ http://example.com/$1 [L] 
RewriteRule ^([a-zA-Z0-9-/]+).example.com/([a-zA-Z0-9-/]+) http://example.com/$1&$2 [L] 

Отредактировано 1

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^(.*)\.example\.com 
RewriteRule ^(.*)$ http://example.com/index.php/%1&$1 [L,NC,QSA] 
+0

не работает .. получать HTTP 403 ошибки –

+0

Что вы ожидали выход URL и что URL нужно выполнить –

+0

я должен поместить .htaccess внутри папки к югу домена или в корневом каталоге? –