php防止模拟用户来源和访问-反爬虫
一些网站是采用检测此IP地址登录的密集度,多次登录后需要输入验证码,那么这时CURL模拟的提交就需要去对验证码图片进行分析,这样就会花费大量时间,当然,这种是对于防止登录被爆破,用户资料泄露的。
还有一种就是直接在session保存生成的随机码,然后放在input的隐藏域,这种比验证码那种差了许多。
注意javascipt本身是无法跨域提交的,不是因为不能做到,而是防止别人恶意偷取用户信息,例如点击打开他的网站,用iframe打开正规网页,然后在另一个iframe中进行偷取。
要实现ajax跨域访问,需要设置
header(“Access-Control-Allow-Origin:*”); //跨域权限设置,允许所有
要防止ajax跨域访问,需要设置 header(“Access-Control-Allow-Origin:http://www.test.com”); //只允许test.com跨域提交数据
如果要防止php的模拟请求,比如post请求,那么就可以设置必须为ajax请求才能处理。
//判断是否为ajax请求,防止别人利用curl的post抓取数据 if(isset(_SERVER[“HTTP_X_REQUESTED_WITH”])&&strtolower(
完整解决方案:
header(“Access-Control-Allow-Origin:http://leshen.applinzi.com/cet”); //只允许本站提交数据,前端防ajax跨域,其实js本来就不能跨域
//判断是否为ajax请求,后端防止别人利用curl的post抓取数据 if(isset(_SERVER[“HTTP_X_REQUESTED_WITH”])&&strtolower(
未经允许不得转载:肥猫博客 » php防止模拟用户来源和访问-反爬虫
相关文章
- PHP异步MySQL:提升网站性能的新方案(php异步mysql)
- 型MySQL与PHP:助力开发的完美组合(mysqlphp类)
- 使用 PHP 执行 Linux 命令:轻松运维(php执行linux命令)
- 探索Linux下查看PHP扩展的奥秘(linux查看php扩展)
- Linux系统下如何快速安装PHP(linux命令安装php)
- PHP快速导出MySQL数据库的技巧(php导出mysql数据库)
- LINUX下编写PHP程序的技巧(linux编写php)
- 解决PHP读取MSSQL数据库乱码问题(php读mssql乱码)
- PHP与MSSQL结合,提高数据查询效率(php能连mssql)
- php中处理模拟rewrite效果
- php中文本操作的类
- 请php正则走开
- php中对xml读取的相关函数的介绍一
- php模拟POST|GET操作实现代码
- php去除html标记--strip_tags与htmlspecialchars的区别详解
- php中通过数组进行高效随机抽取指定条记录的算法
- jQuery+PHP实现的掷色子抽奖游戏实例