PHP限制页面只能在微信自带浏览器访问的代码
为了防止自己辛辛苦苦做的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中修改浏览器的User-Agent来伪装你的浏览器和操作系统
得到HTTP_USER_AGENT 的方法很简单,比如php代码: 复制代码 代码如下: <?php print_r($_SERVER); ?> 复制代码 代码如下: <?php print_r($_SERVER['HTTP_USER_AGENT']); ?> 这两种都可以得到User-Agents和IP等信息,最好配合正则表达式,对信息进行筛选剔除. ----– User-Agents列表----- Internet Explorer 6 Internet Explorer 7
-
PHP curl模拟浏览器采集阿里巴巴的实现代码
没有不可能只有不去做,哈哈 复制代码 代码如下: <?php set_time_limit(0); function _rand() { $length=26; $chars = "0123456789abcdefghijklmnopqrstuvwxyz"; $max = strlen($chars) - 1; mt_srand((double)microtime() * 1000000); $string = ''; for($i = 0; $i < $length; $
-
PHP获取用户的浏览器与操作系统信息的代码
1.用户访问服务器时,利用PHP的超级全局变量$_SERVER数组中字段['HTTP_USER_AGENT'] 获取访问用户的所有信息 我访问时的$_SERVER['HTTP_USER_AGENT'] 字符串 : Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.2 (KHTML, like Gecko) Chrome/5.0.342.3 Safari/533.2 2.利用正则表达式匹配以上字符串,用户的浏览器 操作系
-
使用PHP curl模拟浏览器抓取网站信息
官方解释curl是一个利用URL语法在命令行方式下工作的文件传输工具.curl是一个利用URL语法在命令行方式下工作的文件传输工具.它支持很多协议:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP.curl同样支持HTTPS认证,HTTP POST方法, HTTP PUT方法, FTP上传, kerberos认证, HTTP上传, 代理服务器, cookies, 用户名/密码认证, 下载文件断点续传,上载文件断点续传, http
-
php禁止直接从浏览器输入地址访问.php文件的方法
本文实例讲述了php禁止直接从浏览器输入地址访问.php文件的方法.分享给大家供大家参考.具体实现方法如下: 一般来说对于有些重要的文件我们并不希望用户可以直接输入地址进行访问,对此我们需要进行一些设置.下面总结了一些php禁止直接从浏览器输入地址访问.PHP文件方法,非常实用. 比如说http://www.jb51.net/xx.php 这个文件我不想让别人直接从浏览器输入地址访问. 但是如果从任何网站连接http://www.jb51.net/xx.php过来不可以访问的话,本机建立连接也无
-
使用php判断浏览器的类型和语言的函数代码
我们经常看到有一些网站上面会显示出你目前使用的浏览器类型和使用的语言,比如显示的是:您使用的浏览器为 IE6,繁体字.看起来是不是很炫. 其实这样的功能不难实现,无非就是判断浏览器的类型和语言,如果用JS来做应该很简单,这里我们看看用PHP来怎么实现这样的功能,既然是在做判断,就可以用PHP的条件语句if..else来判断实现. 判断浏览器类型: <?php echo $_SERVER["HTTP_USER_AGENT"]; ?> 判断浏览器语言: <?php ech
-
PHP下利用header()函数设置浏览器缓存的代码
这涉及到4种头标类型: Last-Modified(最后修改时间); Expires(有效期限); Pragma(编译指示): Cache-Control(缓存控制); 前三个头标属于HTTP1.0标准.头标Last-Modified使用UTC日期时间值.如果缓存系统发现Last-Modified值比页面缓存版本的更接 近当前时间,他就知道应该使用来自服务器的新版本. Expires 表明了缓存版本何时应该过期(格林威治标准时间).把它设置为一个以前的时间就会强制使用服务器上的页面. Pragm
-
PHP计划任务之关闭浏览器后仍然继续执行的函数
备忘一下这个函数: 函数名称:ignore_user_abort 本函数配置或取得使用端连接中断后,PHP 程序是否仍继续执行.默认值为中断连接后就停止执行.在 PHP 配置文件中 (php3.ini/php.ini) 的 ignore_user_abort 选项就是配置处.本功能在 PHP 3.0.7 版之后才开始提供. 官方说明:http://cn2.php.net/manual/en/function.ignore-user-abort.php 使用方法: 复制代码 代码如下: ignor
-
PHP实现提取一个图像文件并在浏览器上显示的代码
去年做过一个项目,要把用户上传的图像文件列出文字清单,当用户点击一个文件名后,就可以显示这个图像. 因为要考虑兼容各种不同的图像格式, 我使用了GD库, 判断出具体是那种图像文件(MINE),再调用相应的image生成函数imagecreatefromXXX(),生成一个img,再将这个img以jpeg格式输出至浏览器,虽然做出来了,但总觉得不满意. 今天有机会重新考虑这个功能,在php手册中发现几行代码,简洁明快,完全能实现我要的功能,还不需要GD库 复制代码 代码如下: <?php $siz
-
php获取访问者浏览页面的浏览器类型
方法如下 检查用户的agent字符串,它是浏览器发送的HTTP请求的一部分.用 $_SERVER['HTTP_USER_AGENT']得到agent字符串信息. 比如: <?php echo $_SERVER['HTTP_USER_AGENT']; ?> 有可能是打印出这样的: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) 封装成函数: function my_get_browser(){ if(empty($_SERVER['HTTP_
随机推荐
- PHP实现的贪婪算法实例
- sql注入之手工注入示例详解
- 中文字符串截取的js函数代码
- 用Photoshop为短发MM接长发
- 实现每个星期的每一天指定时间关机的dos/bat
- Java基础教程之理解Annotation详细介绍
- SpringMVC处理Form表单实例
- PHP 开源框架22个简单简介
- php实现建立多层级目录的方法
- CodeIgniter读写分离实现方法详解
- javascript十六进制数字和ASCII字符之间的转换方法
- php AJAX POST的使用实例代码
- 一个可复用的vue分页组件
- c#动态改变webservice的url访问地址
- 深入理解JavaScript系列(12) 变量对象(Variable Object)
- Android在Fragment中实现监听触摸事件
- 基于多线程并发的常见问题(详解)
- 详解SpringMVC学习系列(6) 之 数据验证
- Android开发之ProgressBar字体随着进度条的加载而滚动
- React Native 自定义下拉刷新上拉加载的列表的示例