Я только что установил сервер 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 почти так же прост, просто измените его «Местоположение».
Чтобы администратор и API получили Tomcat, установите mod_proxy и настройте vhost, как показано ниже, для администратора:
# 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>