ASP根据IP来判断跳转页面
真正IP的取得应该这样: 程序代码
ip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
if ip = "" then
ip=Request.ServerVariables("remote_addr")
end if
if instr(ip,"'")>0 then
ip="0.0.0.0"
end if 这样可以突破代理IP查看到真实IP。而不是单纯地用一句 程序代码
ip=Request.ServerVariables("remote_addr") 这样如果人家用了代理,只能得到代理服务器IP。 我们知道,IP格式是这样的:aaa.bbb.ccc.ddd
每一位是0到255。所以,我们可以将任意一个IP转换成一个数IPNUMS ASP公式: 程序代码
ip="172.16.0.1"
arr=split(ip,".")
IPNUMS=int(arr(0))*16777216+int(arr(1))*65536+int(arr(2))*256+int(arr(3))-1
response.write IPNUMS 这样得出的结果,是唯一的,大小关系与IP的所属关系是相同的。 在IP进行比较的时候,就直接比较IPNUMS的大小来判断是否在你需要的IP段内。 如,校内IP段一是这样:172.16.0.1-172.18.255.254
转换后:2886729728 - 2886926333
现有一个内网IP:172.17.100.100转换后为:2886820963 可以知道2886729728<2886820963<2886926333 所以,可以知道这个IP在内网里,就用跳转跳到1.asp 程序代码
response.Redirect "1.asp" ip = Request.ServerVariables("HTTP_X_FORWARDED_FOR") 这句,如果使用了代理IP上网,这将透过代理得到真实IP。但如果没有用代理,则将得到一个空值。所以,下面对得到的IP进行判断是否使用了代理: if ip = "" then ip=Request.ServerVariables("remote_addr") end if 如果没有用代理那么ip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")值为空 ,则用ip=Request.ServerVariables("remote_addr") 得到真实IP。 详细说一下第一部分。 ip = Request.ServerVariables("HTTP_X_FORWARDED_FOR") if ip = "" then ip=Request.ServerVariables("remote_addr") end if if instr(ip,"'")>0 then ip="0.0.0.0" end if 如果IP中包含有符号',则IP为0.0.0.0 if instr(ip,"'")>0 then ip="0.0.0.0" end if 这种方法主要是决对规范IP,使得后面使用split(ip,".")的时候在任何情况下都不会出错。
ASP根据IP来判断跳转页面的更多相关文章
- asp.net中,跳转页面的几种方式
js方式的页面跳转1.window.location.href方式 <script language="javascript" type="text/java ...
- 一种基于自定义代码的asp.net网站首页根据IP自动跳转指定页面的方法!
一种基于自定义代码的asp.net网站首页根据IP自动跳转指定页面的方法! 对于大中型网站,为了增强用户体验,往往需要根据不同城市站点的用户推送或展现相应个性化的内容,如对于一些大型门户网站的新闻会有 ...
- asp.net跳转页面的三种方法比较
目前,对于学习asp.net的很多朋友来讲,实现跳转页面的方法还不是很了解.本文将为朋友们介绍利用asp.net跳转页面的三种方法,并对其之间的形式进行比较,希望能够对朋友们有所帮助. ASP.NET ...
- ASP.NET弹出提示点击确定之后再跳转页面的方法
//ASP.NET弹出提示点击确定之后再跳转页面的方法 //弹出了提示并且通过location.href转到了DeskTop.aspx页面 Response.Write("<scrip ...
- asp.net跳转页面的三种方法比较(转)
2006-10-20 14:32 [小 大] 来源: 博客园 评论: 0分享至: 百度权重查询 词库网 网站监控 服务器监控 SEO监控 手机游戏 iPhone游戏 今天老师讲了三种跳转页面的方法,现 ...
- JS定时刷新页面及跳转页面
JS定时刷新页面及跳转页面 Javascript 返回上一页1. Javascript 返回上一页 history.go(-1), 返回两个页面: history.go(-2); 2. history ...
- 常用的js跳转页面方法实现汇总
1.window.location.href方式 <script language="javascript" type="text/javascript" ...
- iOS极光推送 点击推送消息跳转页面
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launc ...
- js跳转页面方法大全
js跳转页面方法大全<span id="tiao">3</span><a href="javascript:countDown"& ...
随机推荐
- 转载 HTTP常见状态码分析 200 301 302 404 500
转载原地址: http://www.cnblogs.com/starof/p/5035119.html HTTP状态码(HTTP Status Code) 一些常见的状态码为: 一.1开头1xx(临 ...
- loadmore
实例点击 loadmore.js /* * loadmore.js require jQuery,artTemplate * Butterfly 2013.08.28 */ define(['../u ...
- After Android Studio update: Gradle DSL method not found: 'runProguard()'
1 具体报错为: Error:(16, 0) Gradle DSL method not found: 'runProguard()' Possible causes:<ul><li ...
- Activity详解
Activity是android应用的重要组成单元之一(另外3个是Service,BroadcastReceiver和ContentProvider).实际应用包含了多个Activity,不同的Act ...
- Delphi- 一些H8记录
CheckOrder方法写在uDataModConn类里.
- Oracle- 表查询
这些都比较基础,还是重温一下. 一.简单的查询语句1.查询表结构sql>desc dept; (使用PL/SQL Developer查询时,必需在命令窗口才能使用该语句) 2.查询所有列sql& ...
- Runtime 10种用法
来源:haojingxue_iOS 链接:http://www.jianshu.com/p/3182646001d1 阅读了多篇运行时的文章,感觉都很不错,从几篇文章里面提取一些个人认为比较重要的,偏 ...
- zigbee 学习记录之一:资料搜索
先从网络来一段资料吧,在学习过程中慢慢整理资料. <由于zigbee 以cc2530 51单片机为基础,Zstack为源头,比较成熟了,学习和摸索就从Zstack开始吧.没有师傅,就有从网络上大 ...
- Android动画Animation之Tween用代码实现动画
透明度动画.旋转动画.尺寸伸缩动画.移动动画 package com.javen.tween; import android.annotation.SuppressLint; import andro ...
- fb设置viewSourceURL