【问题标题】:How to get actual server name and ip address in jsp in java?如何在java中的jsp中获取实际的服务器名称和IP地址?
【发布时间】:2012-01-13 08:07:43
【问题描述】:

我想在 jsp 中获取服务器的实际名称和 IP 地址。当我做 request.getServerName()

它返回本地主机。但我不希望名称为 localhost,而是机器的实际名称(如在我的情况下它是 IBV-0076)。有没有办法我也可以获得正在处理请求的服务器的 IP 地址?

当我做 request.getLocalAddr() 我得到地址为 0.0.0.0 但我的服务器 ip 是 10.253.18.76

【问题讨论】:

    标签: java jsp servlets httprequest


    【解决方案1】:

    我会使用NetworkInterfaces 来获取有关服务器配置接口的信息。见Oracle What Is a NetworkInterface?

    【讨论】:

      【解决方案2】:

      这也取决于您访问服务器的方式。 请使用实际的服务器IP地址,用于访问网页,然后检查结果。 这是因为如果使用服务器的环回 IP,接口将绑定到“localhost”主机名。 当您在与服务器相同的机器上测试 web 应用程序时,通常会发生这种情况。

      【讨论】:

        【解决方案3】:

        对于 IP 地址,您可以为请求对象找到类似 getLocalAdrr() 的方法。 此外,您可以使用getRequestURL() 检查服务器名称的 URL。

        如果您总是得到 0.0.0.0,请检查您的服务器的网络配置。

        【讨论】:

          【解决方案4】:

          这是一个带有服务器名称和 IP 的示例。它是服务器在其端点上看到的 IP(可能由于 NAT 而不同)和客户端使用的 serverName 并且可以从客户端访问。 ${pageContext.request.localAddr}

          【讨论】:

            猜你喜欢
            • 2013-07-31
            • 2013-03-27
            • 1970-01-01
            • 2015-02-23
            • 1970-01-01
            • 1970-01-01
            • 2013-06-20
            • 2011-07-01
            • 2011-03-27
            相关资源
            最近更新 更多