WEB开发网
开发学院网页设计JavaScript 内外网同时访问问题_判断访问计算机IP 阅读

内外网同时访问问题_判断访问计算机IP

 2006-05-18 19:52:57 来源:WEB开发网   
核心提示:我在内网搭了两个服务器,一个数据库服务器,内外网同时访问问题_判断访问计算机IP,一个Web服务器,并且让网管影射个外网ip给Web服务器,不过可以参考一下 :) )<html><head><meta http-equiv="Content-Type" content=

我在内网搭了两个服务器,一个数据库服务器,一个Web服务器。并且让网管影射个外网ip给Web服务器,使得外网内网可以同时访问。但这样产生了个问题,Web服务器取数据是用内网的相对地址,这样外网访问时就得不到数据,只能显示框架。要是把数据库服务器也映射了的话,那么内网就不能访问了,这样我就没办法调试了。如果把两个服务器合为一个,那么运行的速度就会受到影响,而现在老板也不想再往里投钱,毕竟只是一个演示。而把两台机子搬到实验室的网络机房直接接到外网上也可以解决,但是网络机房是封闭的,有门禁卡,这样我就没办法经常进去修改。
仔细想了一下,觉得做个判断应该可以解决这个问题,只要判断访问的是内网IP还是外网IP,依据判断来进行对应的操作
查了查资料发现用JS不错,因为JS 获取的 IP 有个优点就是它获取的是本机设置的 IP,如果计算机通过局域网上网,那么它获得的就是计算机的局域网 IP,而不像 asp 中 Request 获取的是计算机连接到互联网的 IP。

代码(是从别人那抄来的,不过可以参考一下 :)  )
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>JS获取客户端IP</title>
</head>

<body>
<script type="text/javascript" language="Javascript">
<!--
function GetLocalIPAddress()
{
   var obj = null;
   var rslt = "";
   try
   {
     obj = new ActiveXObject("rcbdyctl.Setting");
     rslt = obj.GetIPAddress;
     obj = null;
   }
   catch(e)
   {
     //异常发生
   }
  
   return rslt;
}

document.write("你的IP是:" + GetLocalIPAddress());
//-->
</script>
</body>

</html>

据说在使用中可能会出现警告,不过这只是测试,应该不碍事的,呵呵  :)

Tags:内外 同时 访问

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接