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 相关文章推荐
一个odbc连mssql分页的类
Oct 09 PHP
PHP数组实例总结与说明
Aug 23 PHP
php仿QQ验证码的实例分析
Jul 01 PHP
深入解析PHP中逗号与点号的区别
Aug 05 PHP
使用Thinkphp框架开发移动端接口
Aug 05 PHP
PHP使用mkdir创建多级目录的方法
Dec 22 PHP
10个对初学者非常有用的PHP技巧
Apr 06 PHP
PHP编写登录验证码功能 附调用方法
May 19 PHP
php实现的http请求封装示例
Nov 08 PHP
php文件上传类的分享
Jul 06 PHP
Yii 框架入口脚本示例分析
May 19 PHP
一文看懂PHP进程管理器php-fpm
Jun 01 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到MongoDB简易对照表的详解
2013/06/03 PHP
qq登录,新浪微博登录接口申请过程中遇到的问题
2014/07/22 PHP
php自定义加密与解密程序实例
2014/12/31 PHP
php中curl使用指南
2015/02/05 PHP
WordPress中给文章添加自定义字段及后台编辑功能区域
2015/12/19 PHP
利用PHP访问带有密码的Redis方法示例
2017/02/09 PHP
详解PHP中curl_multi并发的实现
2020/06/08 PHP
为EasyUI的Tab标签添加右键菜单的方法
2012/07/14 Javascript
jquery ui dialog实现弹窗特效的思路及代码
2013/08/03 Javascript
滚动条响应鼠标滑轮事件实现上下滚动的js代码
2014/06/30 Javascript
jQuery知识点整理
2015/01/30 Javascript
jq实现左侧显示图片右侧文字滑动切换效果
2015/08/04 Javascript
jquery实现倒计时效果
2015/12/14 Javascript
Javascript技术栈中的四种依赖注入详解
2016/02/23 Javascript
原生JS封装ajax 传json,str,excel文件上传提交表单(推荐)
2016/06/21 Javascript
jQuery给div,Span, a ,button, radio 赋值与取值
2016/06/24 Javascript
jQuery.Ajax()的data参数类型详解
2017/07/23 jQuery
es6+angular1.X+webpack 实现按路由功能打包项目的示例
2017/08/16 Javascript
解决微信二次分享不显示摘要和图片的问题
2017/08/18 Javascript
JavaScript实现离开页面前提示功能【附jQuery实现方法】
2017/09/26 jQuery
jQuery动态移除与增加onclick属性的方法详解
2018/06/07 jQuery
教你搭建按需加载的Vue组件库(小结)
2019/07/29 Javascript
layui的select联动实现代码
2019/09/28 Javascript
基于vue实现探探滑动组件功能
2020/05/29 Javascript
[00:43]TI7不朽珍藏III——幽鬼不朽展示
2017/07/15 DOTA
用Python脚本生成Android SALT扰码的方法
2013/09/18 Python
详解Python使用tensorflow入门指南
2018/02/09 Python
python实现接口并发测试脚本
2019/06/25 Python
python类的实例化问题解决
2019/08/31 Python
pytorch实现用CNN和LSTM对文本进行分类方式
2020/01/08 Python
使用sklearn的cross_val_score进行交叉验证实例
2020/02/28 Python
会计学个人自荐信模板
2013/12/13 职场文书
毕业生求职自荐信怎么写
2014/01/08 职场文书
大学生创业计划书的用途
2014/01/08 职场文书
数学国培研修感言
2014/02/13 职场文书
防震减灾主题班会
2015/08/14 职场文书