ОС: Ubuntu2 Серверы: Apache2, Tomcat 7
Мне не хватает знаний о конфигурации apache и tomcat.
Можно ли создать vhost example.com
<VirtualHost *:80>
ServerName example.com
# PseudoCode
DocumentRootJava /var/www/example/
DocumentRootPhp /var/www/app/
</VirtualHost
куда / var / www / example / размещает приложение Java и / var / www / app размещает приложение php?
Другими словами example.com должен запустить приложение Java и example.com/app должен запустить php-код.
Я думаю, что apache mod_proxy справится с этой задачей:
<VirtualHost *:80>
ServerName example.com
ProxyRequests Off
ProxyPreserveHost On
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://localhost:8080/tomcat-application
ProxyPassReverse / http://example.com/
</VirtualHost>
Перенаправляет все вызовы домена на tomcat. но как я могу сказать mod_proxy, что вызов example.com/app должен идти в / var / www / app / и не должен перенаправляться на tomcat, но должен обрабатываться apache / PHP?
Вам необходимо настроить mod_jk для приложения Tomcat (https://tomcat.apache.org/tomcat-3.3-doc/mod_jk-howto.html), а также отдельно настроить PHP (http://php.net/manual/en/install.unix.apache2.php).
В идеале у вас должно быть два IP-адреса, и каждое приложение настраивать на отдельном виртуальном хосте.