php如何防止网站内容被采集? 怎么通过判断IP的方式,限制别人采集网站上的内容? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 很明确地说,ip判断是没用的再很明确地说,一般web程序判断都只能对付“君子”防采集还是要从内容和服务器级别两重联合服务器要监视异常访问,例如一些私密或不存在的url访问内容要做干扰手段,就是让对方采集了也很难排除干扰,但却不影响肉眼阅读 如google一样,内容尽量是分散的js 如果是用IP的话,大家能不能给个详细一点的步骤。要对每个访问页面的IP都记录吗?怎么判断访问的频率? 原理是这样,可是怎么实现呢?我想的是:1.当客户端请求该页面的时候,记录请求时间,并用客户端ip去数据库查询。2.如果有结果,取出时间值最大的一条记录,并计算客户端请求时间与查询时间的差。如果这个值小于定义的时间间隔,就是采集。3.如果没有查询结果,将该IP写入数据库。但是这样的判断显然是不准确的。 我想你先放弃用ip做识别标志的想法,因为从一个局域网内发出的请求都具有相同的ip。比如网吧、小区宽带、一个企业等都是这样我们可以用 session 做唯一识别流程如下:1、检查 session 是否存在,如不存在则转向主页(当采集者不模拟cookie的话,将只能访问首页)2、计算 session 中记录的上次访问时间与当前时间的差,如果小于3到5秒(通常不可能在这么短的时间里把页面内容看完)3、检查 session 中记录的上次访问的 url 是否与本次访问的 url 相同,如相同则放弃检查。因为可能是刷新了一下4、在 session 中记录本次访问时间和url5、能到这里的话,就表示请求者在极短的时间里连续访问不同的页面 所以你可以在这里做拒绝访问的处理,或者宽容一点重复道2若干次再拒绝当然,采集者愿意拉开时间间隔的话,是无法判断的。你总不能禁止用户一页一页的浏览你的网站吧? 随即中文的问题 有谁会用php+oracle导出excel的? ajax回调函数把整个页面代码都返回是怎么回事 分享我的一个模板——我也是专家啦![散分] 请问我希望有新数据增加时,可以在服务器上会自动提示,比如用一段声音. 用正则如何取得URL地址,谢谢 phpMyAdmin如何让一张表里面的数字等于另外一张表中三个数字相加的总和并且可以动态更新? 怎么样读出阿拉伯数字 怎样使用mysql中的blob型的字段? phpMyAdmin需要怎样配置才能正确运作啊?急救!!! PHP 在页面查询到的数据怎么显示在当前页面 两个同父类的子类之间的调用问题
服务器要监视异常访问,例如一些私密或不存在的url访问
内容要做干扰手段,就是让对方采集了也很难排除干扰,但却不影响肉眼阅读
1.当客户端请求该页面的时候,记录请求时间,并用客户端ip去数据库查询。
2.如果有结果,取出时间值最大的一条记录,并计算客户端请求时间与查询时间的差。如果这个值小于定义的时间间隔,就是采集。
3.如果没有查询结果,将该IP写入数据库。
但是这样的判断显然是不准确的。
我们可以用 session 做唯一识别
流程如下:
1、检查 session 是否存在,如不存在则转向主页(当采集者不模拟cookie的话,将只能访问首页)
2、计算 session 中记录的上次访问时间与当前时间的差,如果小于3到5秒(通常不可能在这么短的时间里把页面内容看完)
3、检查 session 中记录的上次访问的 url 是否与本次访问的 url 相同,如相同则放弃检查。因为可能是刷新了一下
4、在 session 中记录本次访问时间和url
5、能到这里的话,就表示请求者在极短的时间里连续访问不同的页面
所以你可以在这里做拒绝访问的处理,或者宽容一点重复道2若干次再拒绝当然,采集者愿意拉开时间间隔的话,是无法判断的。你总不能禁止用户一页一页的浏览你的网站吧?