URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 1597
[ Назад ]

Исходное сообщение
"mod_rewrite и виртуальные сервера"

Отправлено Андрей Кочетков , 09-Авг-03 12:20 
Перечитал и перепробовал всё, что нашёл, но проблему решить не смог. Итак:
Имеется некий web-сервер (hostname.com), которому ServerAlias'ом прописано *.hostname.com.
В домашнем каталоге /home/dir имеются подкаталоги:
/public_html/WebSites/user1/
/public_html/WebSites/user2/
Хочется отмапить через .htaccess (ибо к httpd.conf доступа нет) эти подкаталоги как
user1.hostrname.com и т.п.
Что делаю (.htaccess) :

RewriteEngine On
Options FollowSymLinks
RewriteCond %{HTTP_HOST} ^.*\.hostname\.com$
RewriteRule ^(.*)$ %{HTTP_HOST}$1 [C]
RewriteRule ^(.*)\.hostname\.com(.*) /home/dir/public_html/WebSites/$1$2

После чего мне при обращении к серверу выдаются занятные сообщения, из которых видно, что вышеописанные правила применяются рекурсивно... Подстановка [L] к последнему правилу приводит к Internal Server Error. Подскажите, где собака порылась?


Содержание

Сообщения в этом обсуждении
"mod_rewrite и виртуальные сервера"
Отправлено Андрей Кочетков , 15-Авг-03 11:40 
За неимением ответов нашёл его сам. Привожу его здесь -- вдруг пригодится кому-либо :)

Во избежание рекурсии надо написать правило, явно запрещающее её. Например:
RewriteCond %{REQUEST_URI} !.*WebSites.*
Вот и всё.