我在页面中写入
//test.jsp
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>dotest</title>
</head>
<body>
<%
System.out.println(request.getRemoteAddr());
%>
</body>
</html>
我想得到客户端的IP地址,可是为什么显示的是0:0:0:0:0:0:0:1啊?为什么?????????
//test.jsp
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>dotest</title>
</head>
<body>
<%
System.out.println(request.getRemoteAddr());
%>
</body>
</html>
我想得到客户端的IP地址,可是为什么显示的是0:0:0:0:0:0:0:1啊?为什么?????????
解决方案 »
- 为什么已经设置了reloadable="true",修改jsp还是需要重启tomcat才能生效?
- 请问各位一下java Web开发界面设计
- jsp 连接 传递参数的 问题 在线 急!!!!
- jsp初学者,怎么也看不出有什么错误!!!
- session过期问题
- 使用Spring遇到的问题,请同志们帮我看看
- JSP页面"传值"出现中文乱码问题.进来看看,没那么简单的.....急,急,急,在线等.
- 关于jfreechat在linux下部署出现的问题,求解决方法?在不解决客户就要投诉了,帮忙了大哥哥大姐姐
- 请问:jspsmartupload 下载文本文件出错提示:getOutputStream() has already been called
- string的日期格式如何转化为Oracle的date?
- jQuery datatables插件的延迟加载,后台怎么写
- 你是大侠吗?是的话进来坐坐吧!
最近在进行web开发时,在jsp页面获取服务器ip时,遇到了request.getRemoteAddr()获取的值为0:0:0:0:0:0:0:1,这是为什么呢,照道理讲,应该是127.0.0.1才对,为什么这个获取的值变成了ipv6了呢,而且我发现这种情况只有在服务器和客户端都在同一台电脑上才会出现(例如用localhost访问的时候才会出现),后来上网查了查原因,原来是/etc/hosts这个东西作怪(在windows上应该是C:\Windows\System32\drivers\etc\hosts这个文件),只需要注释掉文件中的 # ::1 localhost 这一行即可解决问题。另外localhost这个文件很有用,这里你可以添加自己的条目,例如添加 192.168.0.212 myweb 这样子,在浏览器中原来只能使用192.168.0.212来访问的,并可以使用myweb来进行替换。
如果还不能解决,本机访问的时候用127.0.0.1或本机ip代替localhost即可解决
同意楼上的说法。