【问题标题】:Access JBOSS management console remotely through Apache通过 Apache 远程访问 JBOSS 管理控制台
【发布时间】:2015-06-25 07:58:18
【问题描述】:

我有一个环境,其中 JBOSS 服务器位于 linux 机器上,它的服务通过运行在那里的 Apache 服务器访问。 我无法以“http://:/console”的身份访问 JBOSS 控制台

显然我必须在“httpd.conf”中进行哪些更改才能从外部访问此 url。

【问题讨论】:

  • 我建议将标题改为“远程访问 JBOSS 管理控制台”,因为这不仅可以通过 Apache 完成。
  • @AlexNevidomsky:但我的情况目前只针对 apache

标签: linux apache web jboss remote-debugging


【解决方案1】:

尝试:

<Location /console>  
    ProxyPass http://localhost:9990  
    ProxyPassReverseCookiePath / /console/  
    ProxyPassReverseCookieDomain localhost <YOUR PUBLIC IP ADDRESS>  
</Location>  

<Location /console/>  
   ProxyPassReverse /  
</Location>  

ProxyPreserveHost On  

ProxyPassProxyPassReverse 指令的作用在于它保留了域,因此您可以在 JBoss 端按原样处理 cookie 而不会出现任何问题,并且可以正确跟踪会话。

ProxyPassReverseCookiePath 指令重写 Set-Cookie 标头中的路径字符串。如果 cookie 路径的开头与 internal-path 匹配,则 cookie 路径将替换为 public-path。而ProxyPassReverseCookieDomain 会重写 Set-Cookie 标头中的域字符串。

查看更多:

【讨论】:

  • 任何人都可以解释上述条目...在此之前我根本没有在 apache 上工作过。 ...所以我需要了解标签和上面的元素。
【解决方案2】:

访问 JBoss 控制台更安全的方法是通过 ssh 隧道。 本地执行

ssh -L 7990:localhost:9990 username@your.jboss.server -N

并在您的本地计算机上的端口 7990 上享受远程服务器的控制台。

在您的网络服务器上打开控制台端口也是一种解决方案,但不太安全。

【讨论】:

  • 实际上我想先启用对 JBOSS 控制台的访问,然后再进行远程调试。那么这个 ssh 会有用吗?如果是这样......如何
  • JBoss 的远程调试是一个很好的话题,这是许多stackoverflow.com/questions/516196/jboss-debugging-in-eclipse 的一个链接如果你不能这样做或访问你的控制台,我断定你的机器是安全的。那么你有两个选择:a)在部署到生产之前调试本地机器上的所有内容(这始终是最好的方案),或者 b)隧道所需的端口并按照通常的调试步骤。
  • 从您个人计算机的命令行中,您正在输入此内容的那个。然后你在浏览器中打开 localhost:7990 ,看起来你的服务器正在从本地机器响应,同时它通过 ssh 将你的请求重定向到那里。如果您使用的是 Windows,您可能需要安装 ssh(或者 putty.exe,它的名称可能不同,但可以解决问题,请阅读文档)——对于开发人员来说,这或多或少是一个要求。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-05-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-11
  • 1970-01-01
  • 2018-09-26
相关资源
最近更新 更多