Apache 在 Glassfish v3 前面使用 mod_proxy_ajp 使用 SSL

2023-12-20



我希望这里有一些裂缝可以轻松解决我在几个论坛中搜索后遇到的问题:我需要将 Glassfish v3 应用程序服务器放在 Apache 2.2.x Web 服务器后面,作为我的 Web 托管商提供的一些部分,例如 Webmail ,正在网络服务器上运行(所以我无法将其关闭)。因此,我决定使用较新的解决方案“mod_proxy_ajp”(随 Apache 开箱即用),而不是更复杂的“mod_jk”,通过 Apache 将请求传递到 Glassfish。到目前为止我所做的是:

Apache 包含“/etc/httpd/conf.d/proxy_ajp.conf”,其中包含:

  • LoadModule proxy_ajp_module 模块/mod_proxy_ajp.so
  • 代理通行证/邮件!
  • 代理密码/ajp://localhost:8080/
  • ProxyPassReverse / ajp://localhost:8080/

玻璃鱼:

  • http-listener-1 正在侦听 8080,并启用“JK 侦听器”
  • http-listener-2 正在侦听 8181 并使用我的 SSL 证书启用了安全性

但我想做的是这样的:

  1. 将“https://webmail.mydomain.com”的所有请求路由到 Apache(webhoster 电子邮件 web 前端)
  2. 将所有其他请求 HTTP 和 HTTPS 路由到 Glassfish。对于 8080 或 8009 上的 Glassfish http-listener-1 的 HTTP,对于使用在 8181 上的 Glassfish http-listener-2 上注册的 SSL 证书的 HTTPS(在两个方向上,传递和反向这些端口对用户不可见) )
  3. 强制对 Glassfish 的所有请求重定向/切换到 HTTPS,或者基于特定资源 (somefile.html) 的 web.xml 安全配置强制从 HTTP 切换到 HTTPS(或执行此操作的任何其他解决方案)

如果有人可以提供解决这 3 个任务的简短描述,我会非常高兴,因为我对 Java Web 管理的了解还不是很深。
预先感谢并欢呼
~梨木白


这是很多问题!听起来您正在尝试通过 Apache 代理 GlassFish,以便用户可以在标准端口(80 和 443)上访问您的应用程序,并且您有多个应用程序、多个域,并且您想要使用 SSL。

那么,接下来你还有很多工作要做!您可能需要研究 Apache 上的虚拟主机;特别是,一个虚拟主机用于 webmail.mydomain.com,另一个虚拟主机用于 mydomain.com。

如果您的网络服务器上没有两个 IP 地址(两个 NIC),那么您必须使用基于名称的虚拟主机。请注意,基于名称的虚拟主机和 SSL 不能轻松协同工作;您可能必须使用通用名称为 mydomain.com 且别名为 webmail.mydomain.com(altSubjectName 扩展名)的 SSL 证书。

有关配置 Apache 的信息可以在此处找到:

http://httpd.apache.org/docs/2.2/vhosts/ http://httpd.apache.org/docs/2.2/vhosts/

有关使用 SSL 的基于名称的虚拟主机的信息可以在此处找到:

http://wiki.apache.org/httpd/NameBasedSSLVHosts http://wiki.apache.org/httpd/NameBasedSSLVHosts

有关配置 GlassFish 的信息可在此处找到:

http://download.oracle.com/docs/cd/E18930_01/html/821-2416/gfaad.html http://download.oracle.com/docs/cd/E18930_01/html/821-2416/gfaad.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Apache 在 Glassfish v3 前面使用 mod_proxy_ajp 使用 SSL 的相关文章

随机推荐

  • 如何设置散景中选定/未选定字形的属性

    我有一个由一些可观测值的时间序列组成的数据集 我想使用散景来查看时间序列中不同点的相图 我想知道的是如何更改选定或未选定字形的属性 在这种情况下 我想减少未选定点的 alpha 或更改选定点的颜色 下面的代码创建了我想要在 ipython
  • 验证器和 ClientIDMode 问题 (ASP.NET)

    ASP NET 4 0 引入了 ClientIDMode 属性 它允许指定如何在输出 html 中呈现 html 元素的 id 我的项目当前设置为 静态 最短 不包含层次结构 ID 当使用任何验证器时 RequiredFieldValida
  • Angular 2 - 在会话中存储的便捷方式

    有没有一种方便的方法可以保存在 sessionStorage 中 而不需要手动监视属性更改和更新 例如 我有一个带有属性 query 的 SearchComponent export class SearchComponent privat
  • 如何在 UISplitViewController 中命名后退按钮

    I have UITableViewController 其名称为新闻 和UIViewController 其名称为 DetailViewController 和UISplitViewController 我希望它在纵向使用 iPad 时显
  • 使用 File.Copy 移动文件或将流写入该位置有什么区别吗?

    我正在重构一些代码 并且有一个问题 我可以对其进行一些评论 原始代码将文件下载到流中 然后 它将流写入临时目录中的文件 然后使用 File Copy 覆盖生产目录中的现有文件 首先将其写入临时目录并使用 File Copy 与立即将流写入生
  • 如何更改 屏幕以使用

    我有这个代码 目前是 和 的组合 我想转向相对布局 但还没有看到这么多这样的例子 对于如何实现这一点的任何建议 我们将不胜感激 关于 XAML 的一些要点 屏幕上出现emptyGrid或phraseGrid 屏幕上出现buttonGrid或
  • Symfony 2.3 - 自定义致命错误

    我在 Symfony 2 3 上遇到了问题 我无法让它工作来获取处理致命错误的自定义函数 Symfony 异常工作正常 如 404 等 但致命错误则不然 这是我在互联网上搜索后得到的 我在 TestBundle 中创建了一个父控制器 另一个
  • 如何在Turbo c++ 4.0中读取文件中的数据?

    我是编程初学者 我正在尝试编写一个从文件中读取 2 个数字的代码 然后 将其显示在 Turbo C 的输出窗口中 我的代码仅读取第一个数字并产生错误的输出 对于第二个数字 include
  • 如何用纯 SQL 编写 LINQ 的 .Skip(1000).Take(100) ?

    SQL 的等价物是什么 Skip LINQ 中的方法 例如 我想从特定数据库表中选择第 1000 1100 行 只用 SQL 就可以做到这一点吗 或者我是否需要选择整个表 然后在内存中查找行 如果可能的话 我希望避免这种情况 因为桌子可能很
  • iPad 分屏视图更改主导航栏颜色

    奇怪的问题 将我的应用程序旋转到纵向 选择工具栏项目并公开 uipopovercontroller 后 如果我旋转回横向 右侧的 UINavigationController SplitView 的 objectAtIndex 0 会更改导
  • “简单表单”的 asp.net mvc 模型继承

    你将如何实施这个 我有以下模型 class Something public string Label get set public DateTime Date1 get set class SomethingStage2 Somethin
  • ASP.NET MVC 跟踪问题

    Question 如何使 ASP NET MVC 跟踪信息与作为 Trace axd 的页内跟踪输出保持一致 我可能遗漏了一些明显的东西 如果你看到它 请指出 传统 ASP NET 的背景信息 因此 回到常规的 ASP NET 时代 您只需
  • cygwin 如何/为何破坏 Windows 权限?

    我们收到 来自现场 即来自安装软件的系统管理员 的投诉 称 cygwin 搞乱 了 NTFS 上的 Windows 权限 Windows 7 10 2008 2012 等 问题用例 一般用例是这样的 系统管理员从 cygwin bash c
  • PyCharm,某些包无法导入Pandas,ImportError:C扩展:StringIO未构建

    我遇到一个非常奇怪的错误并且无法解决它 我有一个具有以下目录结构的项目 ptouch ptouch init py ptouch py io py tests init py tests py 我正在使用 PyCharm 社区版和 Anac
  • 文档字符串中的重复内容

    处理文档字符串中重复内容的好方法是什么 我有许多采用 标准 参数的函数 这些参数必须在文档字符串中进行解释 但是最好只编写文档字符串的相关部分一次 因为这会更容易维护和更新 我天真地尝试了以下方法 arg a a a very common
  • OData v4.0 聚合查询(聚合查询语法)

    例如 我有一个对象模型 Product int ProductId string Name List
  • 如何在MySql SELECT语句中正确使用CAST函数?

    我正在将 MSSQL DB 转换为 MySQL DB 并且有一个存储过程使用强制转换函数从 datetime 数据类型转换为 varchar 数据类型 无论这在 php mysql 中是否重要 因为 php 不是强类型的 我不知道这是否重要
  • 使用 python 解析 Outlook .msg 文件

    环顾四周 没有找到满意的答案 有谁知道如何使用 Python 解析 Outlook 中的 msg 文件 我尝试使用 mimetools 和 email parser 但没有成功 帮助将不胜感激 这对我有用 import win32com c
  • 使用Python控制屏幕

    有没有办法用 python 控制屏幕 显示器 例如将其关闭然后再次打开 类似于笔记本电脑键盘上的快捷按钮 谢谢你 大多数现代笔记本电脑的按钮和显示器之间都有物理连接 例如 我的戴尔 Precision i 甚至可以在 BIOS 启动之前启动
  • Apache 在 Glassfish v3 前面使用 mod_proxy_ajp 使用 SSL

    我希望这里有一些裂缝可以轻松解决我在几个论坛中搜索后遇到的问题 我需要将 Glassfish v3 应用程序服务器放在 Apache 2 2 x Web 服务器后面 作为我的 Web 托管商提供的一些部分 例如 Webmail 正在网络服务