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

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

我在内网搭了两个服务器,一个数据库服务器,一个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>

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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航