PHP限制页面只能在微信自带浏览器访问的代码


Posted in PHP onJanuary 15, 2014

为了防止自己辛辛苦苦做的webapp被人copy,我们都想限制程序只能在微信里面浏览,虽然下面实现了这个功能,单都是小菜,没什么技术含量,懂代码的伪造下就破了。下面是PHP限制页面只能在微信自带浏览器访问的代码。

<!--?php <br ?--> $useragent = $_SERVER['HTTP_USER_AGENT']; 
if (strpos($useragent, 'MicroMessenger') === false) { 
echo " 非微信浏览器禁止访问"; 
} else { 
echo "微信浏览器允许访问"; 
}

上面这个代码还不完善,Windows phone的微信就不能用了,于是修改下:
<!--?php <br ?--> $useragent = addslashes($_SERVER['HTTP_USER_AGENT']); 
if(strpos($useragent, 'MicroMessenger') === false && strpos($useragent, 'Windows Phone') === false ){ 
echo " 非微信浏览器禁止访问www.buyerinfo.biz"; 
}else{ 
echo "微信浏览器允许访问www.buyerinfo.biz"; 
}

大家可以通过获取 HTTP_USER_AGEN,判断。

但是你觉得上面的方法能阻止别人去偷窃你的界面,你就错了,只要伪造一下HTTP_USER_AGEN还是能正常访问。
在谷歌浏览器上面装个User-Agent Switcher,还是能随便访问。于是我还想到用JS来判断是不是手机访问,但是只要浏览器禁止JS运行,还是能正常访问。。不过或许这样能难到一些新手吧。

PHP 相关文章推荐
动态新闻发布的实现及其技巧
Oct 09 PHP
一些常用的php函数
Dec 06 PHP
PHP获取网卡地址的代码
Apr 09 PHP
PHP中设置时区方法小结
Jun 03 PHP
PHP实现获取图片颜色值的方法
Jul 11 PHP
Thinkphp搭建包括JS多语言的多语言项目实现方法
Nov 24 PHP
PHP获取youku视频真实flv文件地址的方法
Dec 23 PHP
深入浅析php中sprintf与printf函数的用法及区别
Jan 08 PHP
PHP单例模式是什么 php实现单例模式的方法
May 14 PHP
CI框架集成Smarty的方法分析
May 17 PHP
ThinkPHP中session函数详解
Sep 14 PHP
Kindeditor编辑器添加图片上传水印功能(php代码)
Aug 03 PHP
使用PHP备份MYSQL数据的多种方法
Jan 15 #PHP
PHP编程风格规范分享
Jan 15 #PHP
php object转数组示例
Jan 15 #PHP
windows下PHP_intl.dll正确配置方法(apache2.2+php5.3.5)
Jan 14 #PHP
PHP类继承 extends使用介绍
Jan 14 #PHP
那些年我们错过的魔术方法(Magic Methods)
Jan 14 #PHP
PHP mail()函数使用及配置方法
Jan 14 #PHP
You might like
mysql+php分页类(已测)
2008/03/31 PHP
PHP实现的MongoDB数据库操作类分享
2014/05/12 PHP
php之curl实现http与https请求的方法
2014/10/21 PHP
Zend Framework+smarty用法实例详解
2016/03/19 PHP
PHP中soap用法示例【SoapServer服务端与SoapClient客户端编写】
2018/12/25 PHP
使用正则替换变量
2007/05/05 Javascript
top.location.href 没有权限 解决方法
2008/08/05 Javascript
JQuery-tableDnD 拖拽的基本使用介绍
2013/07/04 Javascript
实现动画效果核心方式的js代码
2013/09/27 Javascript
js判断IE浏览器版本过低示例代码
2013/11/22 Javascript
jquery trigger伪造a标签的click事件取代window.open方法
2014/06/23 Javascript
ECMAScript6快速入手攻略
2016/07/18 Javascript
JavaScript toUpperCase()方法使用详解
2016/08/26 Javascript
vue子父组件通信的实现代码
2017/07/09 Javascript
vue2.0 如何把子组件的数据传给父组件(推荐)
2018/01/15 Javascript
layui表格内容溢出的解决方法
2019/09/06 Javascript
Vue.set 全局操作简单示例
2019/09/19 Javascript
js+springMVC 提交数组数据到后台的实例
2019/09/21 Javascript
在Express中提供静态文件的实现方法
2019/10/17 Javascript
Python基于高斯消元法计算线性方程组示例
2018/01/17 Python
Python基于OpenCV库Adaboost实现人脸识别功能详解
2018/08/25 Python
opencv实现静态手势识别 opencv实现剪刀石头布游戏
2019/01/22 Python
解决Python安装时报缺少DLL问题【两种解决方法】
2019/07/15 Python
python如何求数组连续最大和的示例代码
2020/02/04 Python
微软开源最强Python自动化神器Playwright(不用写一行代码)
2021/01/05 Python
澳大利亚优质葡萄酒专家:Vintage Cellars
2019/01/08 全球购物
物流专业大学生职业生涯规划书范文
2014/01/15 职场文书
给幼儿园老师的表扬信
2014/01/19 职场文书
素质拓展感言
2014/01/29 职场文书
会计专业自荐信
2014/06/03 职场文书
讲文明懂礼貌演讲稿
2014/09/11 职场文书
2015年个人现实表现材料
2014/12/10 职场文书
公司搬迁通知
2015/04/20 职场文书
学生会干部任命书
2015/09/21 职场文书
WINDOWS 64位 下安装配置mysql8.0.25最详细的教程
2022/03/22 MySQL
在Windows Server 2012上安装 .NET Framework 3.5 所遇到的问题
2022/04/29 Servers