Вопрос

Я недавно получил проекты, которые бегут на стойки, и я ожидаю больше JSP.

После поиска вопроса, я привел в блоги людей, которые пытались сделать то же самое. Эти блоги были не совсем пошаговой процедурой того, как они это сделали, но больше похожи на ссылку на случай, если им нужно сделать что -то одинаковое в будущем. В некоторых случаях автор точно не сказал, был ли он успешным в своей попытке управлять обеими вышеупомянутыми службами вместе.

К сожалению, я не могу следовать их «инструкциям», так как у меня есть много проектов PHP, настроенных (каталоги загрузки, чашки и т. Д.) Для запуска на моем тестовом сервере, и у меня нет роскоши времени, чтобы реконфигурировать их все в Случай я впущу с сервером HTTPD. И ради честности, я не пробовал ни одного шага, выполняя их вместе по той же причине, по которой не решается обновить файлы конфигурации.

Я не уверен, что это добавит к сложности, но я запускаю обе сервисы через xampp (с Tomcat, являющимся дополнением Xampp) для целей переносимости.

Я знаю, что я могу просто остановить мою службу Apache, когда я работаю на JSP, но эй, это возможность, чтобы попробовать что-то новое, и я просто не могу позволить этому скользить. Кроме того, для обеих служб было бы удобно просто запустить автоматически при запуске, который действительно увеличит мою производительность, так как мне не придется вручную переключаться между службами при необходимости.

Надеюсь, что кто -то есть, так кто ехал на той же лодке.

Редактировать: версия Tomcat - 6.0.20 httpd версия 2.2.14

Это было полезно?

Решение

  • Попросите Tomcat послушать порт, отличный от 80
  • Следуйте руководству по настройке MOD_PROXY для перенаправления запросов для определенного местоположения tomcat, например Вот этот.

Если вы действительно просто тестируете, пропустите второй шаг и просто доступа к серверу через другой порт для Tomcat.

редактировать: Смотрите также http://httpd.apache.org/docs/2.2/mod/mod_proxy_ajp.html. При настройке mod_proxy_ajp.

Другие советы

Вы пренебрегаете упомянуть, какую версию Tomcat вы используете, и вы также не упомянули, действительно ли вы смотрели на документацию Tomcat, чтобы ответить на вопрос.

Я бы предложил начать здесь: http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html. и посмотрите на настройку mod_jk.

Если вы хотите использовать apache/ httpd Чтобы обслуживать запрос от PHP, а также любой другой сервер, работающий на разных портах "прокси" и отобратьте URL, который будет обслуживаться другим сервером. Это делается с использованием ProxyPass ProxyPassReverse конфигурация.

Например: если вы хотите http: // localhost / php подавать PHP и http: // localhost/tomcat Чтобы подавать Tomcat, вам придется внести следующие изменения в httpd.config / apache.config [apache2.config в зависимости от версии Apache, которые вы используете]:

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_http_module modules/mod_proxy_http.so
# Uncomment these to proxy FTP or HTTPS
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so

<VirtualHost *:80>
# Your domain name
# ServerName Domain_NAME_HERE

ProxyPreserveHost On

ProxyPass /tomcat http://localhost:8080/
ProxyPassReverse /tomcat http://localhost:8080/

# The location of the HTML files, and access control information
DocumentRoot /var/www
<Directory /var/www>
    Options -Indexes
    Order allow,deny
    Allow from all
</Directory>

</VirtualHost>

Если вы бежите httpd на centos и вы можете получить ошибку Apache Mod_proxy '[Error] (13)Permission Denied', затем следуйте это Ссылка, которая говорит, выполнить следующую команду:

 /usr/sbin/setsebool -P httpd_can_network_connect 1

Я бы порекомендовал вам прочитать mod_proxy..

Ref: Redhat mod_proxy configuration

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top