Уважаемые коллеги, нужна помощь. Прочитал в документации по apache, что возможна настройка нескольких сайтов на одном ip (т.н. массовый хостинг). Эта настройка жизненно необходима для того, чтобы получать доступ по https протоколу на несколько ресурсов , причем слушается и открыт из мира только один ip и 443 порт. Столкнулся с проблемой - на настраиваемом ресурсе используется точка входа и происходит редирект на файл x.php ( т.е. вот так выглядело правило в .htaccess ) :
RewriteRule !public|symon|\.(js|ico|gif|jpg|png|css|swf|pdf)$ x.phpНе могу переписать это правило под текущий конфиг, полученный из доментации apache :
RewriteEngine on
RewriteLog /var/log/rewritemapbank.log
RewriteMap lowercase int:tolower
RewriteMap vhost txt:/usr/local/etc/apache22/extra/httpd-sslmap.conf
RewriteCond %{HTTP_HOST} !^$
RewriteCond ${lowercase:%{HTTP_HOST}|NONE} ^(.+)$
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/$1 [E=VHOST:${lowercase:%{HTTP_HOST}}]Т.е. весь вопрос в том, чтобы производить соответствие виртуалхоста и documentroot для того, чтобы определить каталог на сервере, где лежит контент + настроить редирект на файл x.php
Если кто то сталкивался , помогите плиз. Уже голову сломал
Ресурсы абсолютно одинаковые по содержимому (один используется для тестов, а второй рабочий)
http://httpd.apache.org/docs/2.0/vhosts/examples.html
> http://httpd.apache.org/docs/2.0/vhosts/examples.htmlК сожалению Named Base схема апач не подойдет, т.к. там используется ssl соединение и апач не поймет из какого виртуалхоста брать контент. Собственно решение было описано выше. Весь вопрос в том, как перенаправить все на x.php (если оставить настройки написанные выше, с той лишь разницей, что в последнее правило будет выглядеть так : RewriteRule ^/(.*)$ %1/x.php [E=VHOST:${lowercase:%{HTTP_HOST}}] , то запрос обрабатывается , но не применяются стили и т.п . За это раньше отвечало правило RewriteRule !public|symon|\.(js|ico|gif|jpg|png|css|swf|pdf)$ x.php
Вот как его переписать с учетом наложенных требований...
>[оверквотинг удален]
> RewriteMap vhost txt:/usr/local/etc/apache22/extra/httpd-sslmap.conf
> RewriteCond %{HTTP_HOST} !^$
> RewriteCond ${lowercase:%{HTTP_HOST}|NONE} ^(.+)$
> RewriteCond ${vhost:%1} ^(/.*)$
> RewriteRule ^/(.*)$ %1/$1 [E=VHOST:${lowercase:%{HTTP_HOST}}]
> Т.е. весь вопрос в том, чтобы производить соответствие виртуалхоста и documentroot для
> того, чтобы определить каталог на сервере, где лежит контент + настроить
> редирект на файл x.php
> Если кто то сталкивался , помогите плиз. Уже голову сломал
> Ресурсы абсолютно одинаковые по содержимому (один используется для тестов, а второй рабочий)Все настроил, всем спасибо