因为交换机的缘故,内网(办公室)用户使用域名访问网站,在IIS的日志中记录的是10.10.1.1(因为绕了一个圈子从内网到外网再到服务器,经过了防火墙).上次就是出了这样的事故,无法追踪访客信息. 现在的方案是:内网用户访问时,不允许使用公网IP或者域名访问,必须使用内网的ip(10.10.3.3)访问服务器。而非内网用户则通过公网IP和域名访问网站。这样IIS日志所记录的信息全部真实 网上好多关于JS获取IP,获取URL的文章.都说需要装控件,需要客户端使用较低的安全策略,而ASP/PHP/JSP就不用那么麻烦,可以轻松实现.而这次改版的网站是全静态生成页面,格式是shtml,里面不能放ASP程序.必须靠JS来调用. 找了一下午资料,也没如意,后来突然想起前几天做的旺阁的新闻调用,就直接调用的ASP文件,也不用非要是JS文件啊, <script language="javascript" type="text/javascript" src="ip.ASP"></script> 那么这样做以后,就不用麻烦去写ip.js文件,而就只需要写IP.ASP就可以了,用 document.write("..");输入就对了哦。 ASP CODE: ![]() ‘--内网用户重定向------------------
ip = Request.ServerVariables("REMOTE_ADDR") if (left(ip,5)="10.10") and Request.ServerVariables("HTTP_HOST")<>"10.10.3.3" then response.Redirect("http://10.10.3.3/") end if ‘---------------------------------- JS输出: ![]() <% ip = Request.ServerVariables("REMOTE_ADDR")
if (left(ip,5)="10.10") and Request.ServerVariables("HTTP_HOST")<>"10.10.3.3" then %> document.write("<SCRIPT>document.location.href=‘http://10.10.3.3/v2006‘;</SCRIPT>"); <% end if %> 再结合西方亮的404智能跳转JS,就可以完美实现内网的访问用户地址控制了.。 ![]() <% ip = Request.ServerVariables("REMOTE_ADDR")
if (left(ip,5)="10.10") and Request.ServerVariables("HTTP_HOST")<>"10.10.3.3" then %> document.write("<script language=‘javascript‘> var newdomain=‘10.10.3.3‘; //内外用户访问地址 var stoptime=0; //页面停留时间,以秒为单位 var My_Url=document.location.href; godomain(); function godomain() { var str=My_Url; stag=str.indexOf(‘//‘)+1; str=str.substring(stag+1,str.length) stag=str.indexOf(‘/‘); rstr=str.substring(0,stag); olddomain=rstr; My_Url=My_Url.replace(olddomain,newdomain); setTimeout(‘gourl()‘,stoptime*1000); } function gourl() {window.location=My_Url;} </script>"); <% end if %> 汗,不知道哪儿出了问题,直接在document.write里面写js内容,居然不行,又试了好几个小时,换写SRC的路径就对了. ------------------------------------------------------------------------------------------------- 1:文件:ip.asp ![]() <% ip = Request.ServerVariables("REMOTE_ADDR")
if (left(ip,5)="10.10") and Request.ServerVariables("HTTP_HOST")<>"10.10.3.3" then %> document.write("<script language=javascript src=‘/v2006/ip.js‘></script>"); <% end if %> 2.文件ip.js ![]() var newdomain=‘10.10.3.3‘; //内外用户访问地址
var stoptime=0; //页面停留时间,以秒为单位 var My_Url=document.location.href; godomain(); function godomain() { var str=My_Url; stag=str.indexOf(‘//‘)+1; str=str.substring(stag+1,str.length) stag=str.indexOf(‘/‘); rstr=str.substring(0,stag); olddomain=rstr; My_Url=My_Url.replace(olddomain,newdomain); setTimeout(‘gourl()‘,stoptime*1000); } function gourl() {window.location=My_Url;} 文件3:top.shtml ![]() <script language="javascript" type="text/javascript" src="/v2006/ip.asp"></script>
|
|
来自: looline > 《javascript》