У мене є веб-програма, що розміщується на Tomcat.
Кожного разу, коли я хочу отримати доступ до додатка, я повинен використовувати: 8080 після моєї URL-адреси
(наприклад: webapp.mydomain.com:8080).
Я не можу змінити порт, на якому Tomcat слухає 80, тому що мені потрібно Apache, щоб прослухати його.
Чи є який-небудь спосіб, який дає мені змогу реалізувати моє додаток за допомогою простого URL-адреси webapp.mydomain.com ?
Відповіді:
0 для відповіді № 1Одним із простих варіантів є додавання a VirtualServer
з ProxyPass
правило для вашої конфігурації Apache (або httpd.conf
, або інший файл конфігурації в $APACHE_HOME/conf.d
)
Це скаже Apache
слухати запити на певний домен та пересилати ті запити, які відповідають домену, на інший вузол / порт.
Ось приклад, який пересилає всі запити до цього домену (позначається /) і відправляє на місцевий Tomcat
бігаючи на порту 8080
. Я також додавав приклад реєстрації, щоб ви могли перевірити його роботу:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName webapp.mydomain.com
ServerAlias webapp
ProxyPreserveHost On
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
ErrorLog /var/log/httpd/webapp_error.log
CustomLog /var/log/httpd/webapp_access.log combined
CustomLog /var/log/httpd/webapp.log simple
</VirtualHost>
Apache VirtualHost docs: http://httpd.apache.org/docs/2.2/vhosts/
Це потребує mod_proxy Apache
модуль Він може бути встановлений вже.
0 для відповіді № 2
Ви повинні налаштувати Tomcat з Apache, використовуючи AJP Connector / mod_jk (модуль редиректора Tomcat).
Є багато статей, якщо ви google: