【问题标题】:Apache mod proxy ajp for multiple glassfish domains用于多个 glassfish 域的 Apache mod 代理 ajp
【发布时间】:2012-11-08 23:57:03
【问题描述】:

我只能找到有关 mod_jk 的信息,但我认为我不能是唯一一个想要这样做的人,希望有人已经这样做了。

我有一个 apache httpd 服务器,它已经有代理 ajp 通过端口 8009 连接到 glassfish 3.1.2 域。我想在同一个 glassfish 服务器上添加更多具有不同代码的域,并将 httpd 代理设置为好吧。

由于缺乏信息,我什至不知道从哪里开始。这是在 VPS 上运行的,我将/将在 apache2 上使用虚拟域。

【问题讨论】:

    标签: apache proxy glassfish-3 ajp


    【解决方案1】:

    我遇到了同样的问题,我想其他人也会。

    这是我的解决方案:

    您需要在 glassfish 上创建虚拟服务器,设置正确的根模块并使用完整的 url 转发您的请求。

    1. 创建特定的虚拟服务器

      • 在 Glassfish 管理界面中,转到

        配置 > 服务器配置(默认)> 虚拟服务器

      • 选择新的

      • 填写值

        • Id:虚拟服务器的名称,我用的和host一样(my.sample.com)
        • hosts:您要映射的域 (my.sample.com)
        • 网络侦听器:域将侦听哪些端口 (http-listener1)
        • 默认 Web 模块:您的模块 (mysuperapp_R1.1)

    确保您的应用已部署到配置(默认为服务器配置)并且您的域解析到服务器。 您可以通过访问 http://my.sample.com:8080/ 轻松测试您的设置(假设应用程序在 8080 上运行)。您的应用程序应该可以运行。

    2) 在 apache 中转发请求。 (在 debian 上,但对于其他发行版应该类似),在 /etc/apache2/sites-available 中创建一个 my.sample.com 文件(可以是任何东西,但这非常明确),其中包含以下内容(更改域名当然)

    <VirtualHost *:80>
    ServerName my.sample.com
    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>
    <Location />
        ProxyPass http://my.sample.com:8080/
        ProxyPassReverse http://my.sample.com:8080/
    </Location>
    </VirtualHost>
    

    启用配置并重新加载 apache(在 Debian 上,以下命令应该可以工作)

    a2ensite my.sample.com
    /etc/init.d/apache2 reload
    

    由于与 Primefaces GMap 模块发生冲突,我没有使用 AJP。当然,从代理更改为 AJP 并不是难事。只需确保还为虚拟服务器选择了启用 JK 的网络侦听器。

    如何在 apache 上启用 mod-proxy 或 mod ajp 代理,只需 google 即可:)

    【讨论】:

      猜你喜欢
      • 2016-02-01
      • 1970-01-01
      • 2012-08-06
      • 2016-01-31
      • 1970-01-01
      • 2012-03-15
      • 2010-10-31
      • 2017-07-24
      • 1970-01-01
      相关资源
      最近更新 更多