Переадресация поддоменов с помощью .htaccess

S1
На сайте с 19.02.2008
Offline
57
9203

Добрый день,

Возникла необходимость сделать поддомен на сайте, например, dom.site.ru. Тариф на хостинге не позволяет сделать поддомен и хотелось бы сделать пере направление на папку с помощью .htaccess.

В папке поддомена установлен другой движок сайта.

Сделано:

Создана запись вида: dom A IPсайта

В корне сайта создана папка dom

Добавлен в .htaccess следующий код:

RewriteEngine on

RewriteCond %{HTTP_HOST} ^dom\.site\.ru$ [NC]
RewriteCond %{REQUEST_URI} !^/dom.*$ [NC]
RewriteRule ^(.*)$ /dom/$1 [L,NS]

При переходе на заглавную страницу поддомене dom.site.ru главная стр отображается нормально но при переходе далее по страницам, например, dom.site.ru/page4.html - выдает 404 ошибку основного сайта как будто бы перешел по адресу site.ru/page4.html

Подскажите в чем может быть проблема?

Vladimir
На сайте с 07.06.2004
Offline
590
#1
skin123:
Добрый день,
Возникла необходимость сделать поддомен на сайте, например, dom.site.ru. Тариф на хостинге не позволяет сделать поддомен и хотелось бы сделать пере направление на папку с помощью .htaccess.
В папке поддомена установлен другой движок сайта.

Сделано:
Создана запись вида: dom A IPсайта
В корне сайта создана папка dom
Добавлен в .htaccess следующий код:

RewriteEngine on

RewriteCond %{HTTP_HOST} ^dom\.site\.ru$ [NC]
RewriteCond %{REQUEST_URI} !^/dom.*$ [NC]
RewriteRule ^(.*)$ /dom/$1 [L,NS]



При переходе на заглавную страницу поддомене dom.site.ru главная стр отображается нормально но при переходе далее по страницам, например, dom.site.ru/page4.html - выдает 404 ошибку основного сайта как будто бы перешел по адресу site.ru/page4.html

Подскажите в чем может быть проблема?

Такая конструкция работает


RewriteEngine on
RewriteCond %{HTTP_HOST} ^dom\.site.ru$ [NC]
RewriteCond %{REQUEST_URI} !dom/
RewriteRule ^(.*)$ dom/$1
Аэройога ( https://vk.com/aeroyogadom ) Йога в гамаках ( https://vk.com/aero_yoga ) Аэройога обучение ( https://aeroyoga.ru ) и просто фото ( https://weandworld.com )
siv1987
На сайте с 02.04.2009
Offline
427
#2


RewriteEngine On
RewriteCond %{ENV:REDIRECT_VHOST} ^$
RewriteCond %{HTTP_HOST} ^(www\.)?dom\.site\.ru$
RewriteRule ^(.*) dom/$1 [L,E=VHOST:1]

Или такая конструкция для легкого способа создания неограниченного числа поддоменов


RewriteEngine On
RewriteCond %{ENV:REDIRECT_VHOST} ^$
RewriteCond %{HTTP_HOST} ^(www\.)?(.+)\.site\.ru$
RewriteRule ^(.*) %2/$1 [L,E=VHOST:1]

dom.site.ru/index.php => ./dom/index.php

dom2.site.ru/index.php => ./dom2/index.php

dom.dom2.site.ru/index.php => ./dom.dom2/index.php

S1
На сайте с 19.02.2008
Offline
57
#3

Спасибо! Все заработало :)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий