【问题标题】:Httpd integration with Tomcat 9Httpd 与 Tomcat 9 的集成
【发布时间】:2020-09-10 02:30:12
【问题描述】:

我需要用 Tomcat 配置 httpd。我尝试了几个步骤,但它不起作用。

1) 我安装了 httpd2.4 和 tomcat9。使用 localhost:8080 和 localhost 分别检查,它工作得很好。
2) 要配置,我在 httpd 上进行了以下更改。

a) 在 LoadModule 下取消注释

  LoadModule proxy_module modules/mod_proxy.so
  LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
  LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
  LoadModule proxy_connect_module modules/mod_proxy_connect.so
  LoadModule proxy_express_module modules/mod_proxy_express.so
  LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
  LoadModule proxy_http_module modules/mod_proxy_http.so

b) 添加了新的虚拟主机

  <VirtualHost ws.foobar.com:80>
  ServerName ws.foobar.com

  ProxyRequests Off
  ProxyPass /examples ajp://localhost:8009/examples
  ProxyPassReverse /examples ajp://localhost:8009/examples
  </VirtualHost>

3) 同样,对 Tomcat 进行了更改并取消了 AJP 连接器的注释。

    <!-- Define an AJP 1.3 Connector on port 8009 -->

<Connector protocol="AJP/1.3"
           address="::1"
           port="8009"
           redirectPort="8443" />

完成这些更改后,我的 Windows 系统上的主机文件也进行了更改。

  "# localhost name resolution is handled within DNS itself.
  # 127.0.0.1       localhost
  # ::1             localhost
  103.73.151.211    ws.foobar.com
   192.168.0.103    ws.foobar.com
    127.0.0.1      ws.foobar.com
     ::1            ws.foobar.com"

完成所有这些更改后,我的 httpd.exe 没有启动,tomcat 启动,但是在开始为 AJP 报错时。

【问题讨论】:

  • 请注意标签:你标签apache,它声明它是关于编程到httpd apis,明确不是关于配置(因为那是stackoverflow的主题)。此外,您标记tomcat8,但提到已安装tomcat9。并且请不要将文本内容作为图像发布。我将投票作为 stackoverflow 的主题(请参阅help center
  • 如果这个问题结束了,它可能会被问到 Server Fault

标签: tomcat server httpd.conf tomcat9


【解决方案1】:

我自己已经弄清楚了这个问题以及如何使用 tomcat 配置 Apache。

我做了以下更改:

  1. 未注释 LoadModule proxy_module modules/mod_proxy.so & LoadModule proxy_http_module modules/mod_proxy_http.so 从 httpd.conf 文件
  2. uncommented 包含 conf/extra/httpd-vhosts.conf,总是在 httpd.conf 在 httpd-vhosts.conf 中,我添加如下。删除“

    < VirtualHost *:80>
    ServerName localhost
    ProxyRequests Off
    ProxyPreserveHost On
    ProxyPass /  http://localhost:8080/
    ProxyPassReverse / http://localhost:8080/
    < /VirtualHost>
    

【讨论】:

    猜你喜欢
    • 2012-01-24
    • 2014-08-07
    • 2015-12-04
    • 2013-04-13
    • 1970-01-01
    • 2017-06-07
    • 2013-09-17
    • 1970-01-01
    • 2022-10-13
    相关资源
    最近更新 更多