簡體   English   中英

如何一起運行Apache(httpd)和Tomcat?

[英]How do I run Apache (httpd) and Tomcat together?

我最近得到了在Struts上運行的項目,我期待更多的JSP即將推出。

在谷歌搜索問題后,我被引導到試圖做同樣事情的人的博客。 這些博客並不完全是他們如何做到這一步的一步一步的過程,但更像是一個參考,以防他們將來需要做同樣的事情。 在某些情況下,作者沒有確切地說他是否成功地試圖同時運行上述兩種服務。

不幸的是,我無法按照他們的“說明”,因為我有大量的PHP項目配置(上傳目錄,類路徑等...)在我的測試服務器上運行,我沒有時間重新配置它們我弄亂了httpd服務器。 出於誠實的考慮,我沒有嘗試過將它們組合在一起,原因與更新配置文件猶豫不決的原因相同。

我不確定這是否會增加復雜性,但我通過xampp(tomcat是一個xampp附加組件)運行這兩種服務,以實現可移植性。

我知道每當我在JSP上工作時我都可以停止我的Apache服務但是,這是嘗試新事物的機會,我不能讓它失敗。 此外,兩個服務在啟動時自動運行真的很方便,這真的可以提高我的工作效率,因為我不需要在需要時手動切換服務。

希望有人可以乘坐同一條船。

編輯:Tomcat版本是6.0.20 Httpd版本是2.2.14

  • 讓Tomcat在80以外的端口上偵聽
  • 按照指南設置mod_proxy,將某個位置的請求重定向到Tomcat,例如這個

如果您真的只是測試,請跳過第二步,只需通過Tomcat的其他端口訪問服務器。

編輯 :有關設置mod_proxy_ajp的信息,請參閱http://httpd.apache.org/docs/2.2/mod/mod_proxy_ajp.html

你忽略了你正在使用的Tomcat版本,你也沒有提到你是否真的看過Tomcat文檔來回答這個問題。

我建議從這里開始: http//tomcat.apache.org/connectors-doc/webserver_howto/apache.html並查看設置mod_jk。

如果你想使用apache/ httpd來提供來自PHP的請求以及在不同端口上運行的任何其他服務器,請在端口8080上說tomcat,你可以使用apache / httpd充當“代理”並映射一個URL,它將是由另一台服務器提供 這是使用ProxyPass ProxyPassReverse配置完成的。

例如:如果您希望PHP服務http:// localhost / phptomcat服務http:// localhost / tomcat ,則必須在httpd.config / apache.config中進行以下更改[apache2。配置取決於您使用的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>

如果您在centos上運行httpd並且您可能會收到錯誤Apache Mod_proxy '[Error] (13)Permission Denied' ,然后按照鏈接說明執行以下命令:

 /usr/sbin/setsebool -P httpd_can_network_connect 1

我建議你閱讀mod_proxy

參考: Redhat mod_proxy配置

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM