У меня есть Java-приложение, отвечающее на несколько доменов и использующее для каждого домена определенный виртуальный хост Apache. Это потому, что Apache быстрее, чем tomcat, обслуживает статические ресурсы.
Необходимо сделать это во время выполнения, без перезапуска конфигурации Apache.
Для выполнения этого действия я использую директиву VirtualDocumentRoot, как описано ниже:
AddType text/html .html .shtml
AddOutputFilter INCLUDES .html .shtml
NameVirtualHost *:80
UseCanonicalName Off
<VirtualHost *:80>
ServerName domain.com
ServerAlias *
# Define virtual host directory, using entire domain
VirtualDocumentRoot /path/to/whosts/%0
# Define directory access
<Directory "/path/to/whosts/">
Options -Indexes MultiViews +Includes
Order allow,deny
Allow from all
</Directory>
# Define Java Proxies
<Proxy *>
AddDefaultCharset Off
Order deny,allow
Allow from all
</Proxy>
# Allow Libs (static resources) to access apache directly
ProxyPass /libs !
ProxyPass / ajp://localhost:8009/
ProxyPassReverse / ajp://localhost:8009/
</VirtualHost>
Это не очень хорошо работает, потому что если я пытаюсь получить доступ к www.domain.com, он отличается от доступа к domain.com.
Вы считаете хорошей идеей зарегистрировать символическую ссылку на www.domain.comto domain.com???
Существует еще один способ сделать это? Я действительно беден в управлении Apache ...
Спасибо большое!
Чао, Давиде.