免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2543 | 回复: 3
打印 上一主题 下一主题

从程序角度如何知道用户第一次打开浏览器? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-12-08 17:38 |只看该作者 |倒序浏览
需求是这样的,研发一款路由器,让用户第一次打开浏览器(或第一次浏览网页)时强制显示一个欢迎页


初步想法:在路由器上截取所有DNS包,当收到第一个DNS包时,把ip地址重定向到自己的服务器ip(回复假的DNS包)


但是遇到一个问题,不知道如何判定用户第一次打开浏览器。因为第一个DNS包不一定是第一次打开浏览器,软件后台更新等也可能需要dns解析。我不希望干扰用户的其他上网行为,只想他第一次浏览网页时使用我的欢迎页(网址导航)



有没有一些方法可以使路由器知道用户使用浏览器?比方说打开浏览器时浏览器必须发某种包

论坛徽章:
6
2015年迎新春徽章
日期:2015-03-04 09:48:00IT运维版块每日发帖之星
日期:2015-06-11 22:20:00IT运维版块每日发帖之星
日期:2015-08-23 06:20:00数据库技术版块每日发帖之星
日期:2015-10-24 06:20:00IT运维版块每日发帖之星
日期:2015-12-24 06:20:00IT运维版块每日发帖之星
日期:2016-04-15 06:20:00
2 [报告]
发表于 2014-12-10 15:36 |只看该作者
本帖最后由 apen 于 2014-12-10 15:38 编辑

不般不用DNS请求来实现,多采用HTTP劫持来实现这个功能:
检查HTTP请求的源地址,与系统中缓存的源地址进行比较,如果没有,加入缓存,同时对这个HTTP请求进行重定向。也可以将自己的页面代码加入从真实地址返回的页面中!

论坛徽章:
0
3 [报告]
发表于 2014-12-11 16:19 |只看该作者
回复 2# apen


    good,这个方法貌似很不错,请问你所说的缓存是什么缓存?怎样查看?

论坛徽章:
6
2015年迎新春徽章
日期:2015-03-04 09:48:00IT运维版块每日发帖之星
日期:2015-06-11 22:20:00IT运维版块每日发帖之星
日期:2015-08-23 06:20:00数据库技术版块每日发帖之星
日期:2015-10-24 06:20:00IT运维版块每日发帖之星
日期:2015-12-24 06:20:00IT运维版块每日发帖之星
日期:2016-04-15 06:20:00
4 [报告]
发表于 2014-12-16 10:13 |只看该作者
回复 3# 阿鸾44
缓存就是用来记录那些地址已经进行过重定向,你在系统中必须有一个表用来记录这些地址,否则的话就能判断是否是第一次打开了!

   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP