Dns 将端口从8080更改为80,以查看域名上的JBoss/Wildfly Java应用程序,而不是IP地址

Dns 将端口从8080更改为80,以查看域名上的JBoss/Wildfly Java应用程序,而不是IP地址,dns,jboss,port,wildfly,Dns,Jboss,Port,Wildfly,我有一个Java应用程序,它在专用的Linux服务器上使用Wildfly 16,运行WHM CentOS 6.10。该应用程序在IP地址端口8080上工作 Apache2.4已安装并正在运行。我被告知Apache使用域名所在的端口80。我可以从域URL中看到public_html下的boilerplate index.html页面,但不能看到WildFly索引页面。 IP地址端口8080确实显示WildFly索引页。它需要使用域名显示 我尝试了以下方法: <interfaces>

我有一个Java应用程序,它在专用的Linux服务器上使用Wildfly 16,运行WHM CentOS 6.10。该应用程序在IP地址端口8080上工作

Apache2.4已安装并正在运行。我被告知Apache使用域名所在的端口80。我可以从域URL中看到public_html下的boilerplate index.html页面,但不能看到WildFly索引页面。 IP地址端口8080确实显示WildFly索引页。它需要使用域名显示

我尝试了以下方法:

<interfaces>
        <interface name="management">
            <inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
        </interface>
        <interface name="public">
            <inet-address value="${jboss.bind.address:127.0.0.1}"/>
        </interface>
 </interfaces>
/bin/standalone.sh-Djboss.http.port=80

错误[org.jboss.msc.service.fail](msc服务线程1-5)MSC000001:无法启动服务org.wildfly.undertow.listener.default:org.jboss.msc.service.StartException in service org.wildfly.undertow.listener.default:地址已在使用中/127.0.0.1:80

在standalone.xml中,我更改了以下内容:

不幸的是,我不知道如何发布所有错误,但我可以提交以下内容: 错误[org.jboss.as.controller.management operation]-故障描述:“WFLYCTL0080:失败的服务”=>“org.wildfly.undertow.listener.default”

INFO[org.jboss.as.controller](控制器引导线程)WFLYCTL0183:服务状态报告 WFLYCTL0186:无法启动的服务:服务org.wildfly.undertow.listener.default:WFLYUT0082:无法启动“默认”侦听器

通过更改以下内容,在standalone.xml中重试:

错误[org.jboss.as.controller.management operation]WFLYCTL0013:操作(“添加”)失败-地址:

  • 失败描述:{“WFLYTL0080:失败的服务”=>{“org.wildfly.undertow.listener.default”=>“WFLYUT0082:无法启动“default”侦听器。 原因:java.net.SocketException:权限被拒绝“
WFLYCTL0186:无法启动的服务:服务org.wildfly.undertow.listener.default:WFLYUT0082:无法启动“默认”侦听器。 WFLYCTL0448:2其他服务由于其依赖项丢失或失败而关闭

最后,在本帮助中,这个standalone.xml还包括以下内容:

<interfaces>
        <interface name="management">
            <inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
        </interface>
        <interface name="public">
            <inet-address value="${jboss.bind.address:127.0.0.1}"/>
        </interface>
 </interfaces>

请帮助将应用程序从IP地址(端口8080)切换到域URL中显示的地址。也许我需要将域转发或指向JBOSS主目录。不确定或如何切换。如有任何帮助,将不胜感激。

您收到的是“地址已在使用错误”因为Apache httpd已经绑定到端口80。因此,您无法将WildFly Java应用绑定到端口80,Java应用也因此无法启动。您需要配置/集成Apache Web服务器和WildFly。类似Apache的服务是静态内容,而WildFly是其应用服务器。您将拥有类似这样的功能在您的
httpd.conf
中:

JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat "%w %V %T"
LoadModule jk_module modules/mod_jk.so
<VirtualHost *:80>
    ServerName example.com
    DocumentRoot "/dir/dir"
    
    ... snipped ...

    JkMount /* jboss
</VirtualHost> 
然后在
vhosts.conf
中会有类似的内容:

JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat "%w %V %T"
LoadModule jk_module modules/mod_jk.so
<VirtualHost *:80>
    ServerName example.com
    DocumentRoot "/dir/dir"
    
    ... snipped ...

    JkMount /* jboss
</VirtualHost> 
然后在
standalone.xml
中:

<socket-binding-group ... snipped ... >
    <socket-binding name="ajp" port="${jboss.ajp.port:8009}" />
    ... snipped ...
</socket-binding-group>

…剪断。。。

使用Apache作为反向代理,使用CentOS通过mod_代理进行Wildfly

  • 验证Apache使用的配置文件(httpd.conf)

    httpd-V | grep服务器配置文件

  • 验证模块是否已在
    httpd.conf
    或模块
    包含文件中启用

    LoadModule proxy\u modules/mod\u proxy.so LoadModule proxy\u http\u module modules/mod\u proxy\u http.so

  • 由于
    httpd.conf
    文件警告由于新的Apache升级或重新生成配置文件而导致文件中的更新,因此改为使用config
    include
    文件。在这种情况下,
    include/post\u virtualhost\u global.conf
    (而不是
    pre\u virtualhost\u global.conf

  • 将以下内容添加到
    includes/post\u virtualhost\u global.conf

    代理主机 Proxypass/http://localhost:8080/ ProxypassReverse/http://localhost:8080/

  • 重新启动Apache服务

    服务httpd停止

    服务httpd启动


  • 谢谢你的回复。我对你的回答有点困惑。我需要添加到我的httpd.conf吗?我也找不到vhost.conf,但我有我的答案,我的答案是为了向你指出将Apache Web服务器与WildFly/JBoss集成的方向。你用谷歌搜索过吗?想法是你不需要更改WildFly端口。是的,
    ViTualHost
    可以在
    httpd.conf
    中。请阅读关于
    ajp
    连接的httpd手册和WildFly手册。尝试通过谷歌搜索“使用mod_jk将apache作为WildFly的前端”。我之前遗漏了一个重要的部分。在应用程序服务器盒重新启动之前,该站点曾按预期工作。我不知道Wildfly或Apache以前是如何工作的,但做了
    httpd-M
    rpm–qa | grep mod_proxy
    来查看服务器上启用的Apache模块是mod_proxy。
    httpd.conf
    di将我直接提交给管理员include文件
    pre_virtualhost_global.conf
    。不幸的是,尽管我在httpd和wildfly上做了停止/启动操作,但该文件中的任何更新都没有执行任何好的或坏的更改。是的,这是将Apache与wildfly/JBoss集成的另一种方式。而不是搜索如何配置
    mod_jk
    ,而是搜索
    mod_proxy
    。使用
    mod_proxy
    ,我猜您正在使用Apache作为负载平衡器。请参阅更新