Я только что настроил сервер Ubuntu с Tomcat7 и Apache2.
Apache работает на порте 80, Tomcat на порте 8080. Что я хочу сделать, теперь должен перенаправить определенные субдомены к Tomcat.
mydomain.com => Apache root
www.mydomain.com => Apache root
wp.mydomain.com => Apache folder Wordpress
admin.mydomain.com => Tomcat project AdminTool
api.mydomain.com => Tomcat project WebService
Пользователю не придется войти / не должен видеть номера портов (просто admin.mydomain.com
нет admin.mydomain.com:8080
) при взаимодействии с веб-сайтами.
Я знаю, что существует несколько вопросов, просящих подобные вещи, и я также считал некоторые ключевые слова, какой шов быть важным для моей проблемы (Виртуальный хост, Прокси...), но это - первый раз, я работаю с Linux, и те другие вопросы просто не детализированы достаточно, чтобы я понял, как эти вещи работают.
Спасибо!
Вам необходимо создать виртуальный хост для каждого из мест, которые вы хотите иметь ответы на разные имена (admin, wp, api). "www" и mydomain.com должны использовать конфигурацию по умолчанию, просто убедитесь, что у вас есть CN запись, указывающая на www.
Виртуальный хост wp.mydomain.com почти так же прост, просто измените его на "Location".
Для admin & API, чтобы tomcat установил mod_proxy и настроил vhost что-то вроде ниже для admin:
# mod_proxy setup.
ProxyRequests Off
ProxyPass /webapps http://localhost:8080
ProxyPassReverse /webapps http://localhost:8080
<Location "/webapps/admin">
Order allow,deny
Allow from all
</Location>