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"& ...
随机推荐
- 广州大学华软软件学院——NA视频下载
准备工具: 360极速浏览器(不要认错图标了): 浏览器视频下载插件: 第一步:安装浏览器插件 1.打开浏览器 2.解压,找到插件文件: 3.把插件拖到浏览器中: 4.添加,然后就完成了插件安装 查看 ...
- CodeForces 696A(Lorenzo Von Matterhorn ) & CodeForces 696B(Puzzles )
A,给一棵完全二叉树,第一个操作,给两个点,两点路径上的所有边权值都增加w,第二个操作,给两个点,求两点路径上的所有边权值和. 我看一眼题就觉得是树链剖分,而我又不会树链剖分,扔掉. 后来查了题解,首 ...
- CodeForces 456D&455B--A Lot of Games(Trie+博弈)
题意:给n个字符串.进行k次游戏.每局开始,字符串为空串,然后两人轮流在末尾追加字符,保证新的字符串为集合中某字符串的前缀,不能操作者输,新一轮由上一句输的人先手. 题解: #看到此题毫无头绪,队友写 ...
- nyoj 891 找点
找点 时间限制:2000 ms | 内存限制:65535 KB 难度:2 描述 上数学课时,老师给了LYH一些闭区间,让他取尽量少的点,使得每个闭区间内至少有一个点.但是这几天LYH太忙了,你们帮 ...
- [OC Foundation框架 - 23] 文件管理
A. 目录管理 NSFileManager*manager = [NSFileManagerdefaultManager];//单例模式 // 1.获取文件属性 NSString *path = @& ...
- AutoLayout框架Masonry使用心得
AutoLayout框架Masonry使用心得 字数1769 阅读1481 评论1 喜欢17 我们组分享会上分享了页面布局的一些写法,中途提到了AutoLayout,会后我决定将很久前挖的一个坑给填起 ...
- IAR stm8带库的工程模板
下载:http://pan.baidu.com/share/link?shareid=2243555626&uk=2483252218
- web.xml(spring/spring mvc/hibernate)
<?xml version="1.0" encoding="UTF-8"?> <web-app id="WebApp_ID" ...
- Java WeakReference的理解与使用
转载:http://itindex.net/detail/47754-%E9%9D%A2%E8%AF%95-java-weakreference?utm_source=tuicool&utm_ ...
- MapReduce的流程
1. Inputformat会从job的INPUT_DIR目录下读入待处理的文件,检查输入的有效性并将文件切分成InputSplit列表.Job实例可以通过setInputFormatClass(Cl ...