request.getRemoteAddr()和request.getRemoteHost()的区别是什么?

request.getRemoteHost()为什么得到的不是机器名,而是IP地址


解决用request.getRemoteHost()为什么得到的不是机器名,而是IP地址

web服务器在server.xml查看一下connector中的enableLookups
说明如下:
如果为true,则可以通过调用request.getRemoteHost()进行DNS查询来得到远程客户端的实际主机名,若为false则不进行DNS查询,而是返回其ip地址



request.getRemoteAddr()和request.getRemoteHost()的区别是什么?

  • -----------------------------------------------------------------------------------------
    请问我在JSP页面中使用如下语句:
    System.out.println("request.getRemoteAddr(): " + request.getRemoteAddr());
    System.out.println("request.getRemoteHost(): " + request.getRemoteHost());
    得到的结果相同(局域网内试验的结果)。
    那么getRemoteAddr()和getRemoteHost()到底有什么区别?
    我的目的就是要得到发出request的机器的IP地址,到底用以上哪个方法?
    ---------------------------------------------------------------

    前一个是获得客户端的ip地址
    后一个是获得客户端的主机名

    所以用前一个。


  • 你可能感兴趣的:(request)