
09.08.2009, 17:51
|
|
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме: 6075534
Репутация:
2731
|
|
Самое простое (Решение 1):
Options +FollowSymLinks +SymLinksIfOwnerMatch
rewriteengine on
RewriteCond %{REQUEST_URI} !^/sites(/.*)?$
RewriteCond %{HTTP_HOST} ^(www.)?(.*)$
RewriteCond /path_to_http_root/sites/%2 -d
RewriteRule (.*) sites/%2/$1 [L,QSA]
Достаточно добавить каталог в /sites/ чтобы заработало.
Ещё использовал вот такой вариант (Решение № 2):
В httpd.conf, в секции настроек виртуалхоста:
RewriteMap vhost txt:/projects/iwc/hosts.txt
В .htaccess (лежит в корне виртуалхоста)
Options +FollowSymLinks +SymLinksIfOwnerMatch
rewriteengine on
RewriteCond %{HTTP_HOST} ^(www.)?(.*)$
RewriteCond ${vhost:%2|NOT-FOUND} !=NOT-FOUND
RewriteCond /projects/iwc/sites/%2 -d
RewriteRule (.*) sites/%2/$1 [L,QSA]
Сам файл hosts.txt имеет вид:
alias_1.site -
alias_2.site -
alias_3.site -
nccmin.anything -
Минус в том, что нужно иметь доступ к httpd.conf
Плюс в том, что для расширения достаточно добавить новый субдомен в hosts.txt (можно не убирать исходники с /sites/, а только убрать строку из hosts.txt, чтобы временно отключить домен).
|
|
|