在Java中找出您的网站访问者IP地址

时间:2009-09-27 09:56:13

标签: java web

使用Java检测网站访问者IP地址是否有简单可靠的方法。我正在尝试利用Akismet在我的博客帖子/评论中检测垃圾邮件。 API要求我指定评论者的IP地址。

谢谢=)

4 个答案:

答案 0 :(得分:4)

致电ServletRequest.getRemoteAddr()应该这样做。

答案 1 :(得分:3)

ServletRequest.getRemoteAddr()在最简单的场景中执行此操作。如果您位于负载均衡器后面,则可能需要查看X-Forwarded-For标头,因为getRemoteAddr()将是负载均衡器的地址。它是以逗号分隔的IP编号列表,其中最后一个是连接到负载均衡器的地址。最后一个地址是您唯一可以信任的地址(因为它将由负载均衡器添加),其他地址可能是欺骗性的。

答案 2 :(得分:1)

如果您在服务器端使用JSP,那么您可以查看以下链接: http://www.rgagnon.com/javadetails/java-0363.html

如果您使用的是servlet,则可以使用HttpServletRequest.getRemoteAddr()

答案 3 :(得分:0)

问题流量大约有80%的人会努力确保他们不工作 - 我看到的每个站点都停留在使用某种人类不得不思考的身份验证,IPV4是不变的来源欺骗,入侵和新闻报道(你想要远离它们)IPv6通过工程级工作来处理这个问题。

那时,我认为他们将转向使用人体盾牌或其他东西。