如何判断卷曲请求与浏览器请求

时间:2014-10-25 02:48:58

标签: php .htaccess curl

我有一个网络服务器,某些用户一直在使用自动脚本检索我的图像。我希望将它们重定向到错误页面,或者只有在它是CURL请求时才给它们一个无效图像。

我的图片位于http://example.com/images/AIDd232320233.png,有没有我可以将.htaccess路由到我的控制器索引函数,我可以检查它是否是真实的请求?

以及我的另一个问题,我如何检查浏览器标题以区分最可能的真实用户和用cURL请求完成的用户?

1 个答案:

答案 0 :(得分:9)

不幸的是,简短的回答是“没有。'

cURL为"欺骗"提供了所有必要的选项。任何浏览器。也就是说,更具体地说,浏览器通过特定的头信息识别自己,而cURL提供了以您选择的任何方式设置头数据的所有工具。因此,不可能直接区分两个请求。*

* 没有更多信息。确定是否有Live Human启动流量的常用方法是在之前的步骤中设置cookie(尝试确保请求是用户在您网站上的自然副产品),或者使用Captcha和cookie(验证某人)可以通过测试。)

最简单的方法是设置一个cookie,它实际上只能确保糟糕的程序员无法通过,或者编程人员不想花时间为他们的网站定制他们的刮刀。

更加尝试和真实的方法是Captcha,因为它需要用户进行交互以证明他们的血管中有血液。

如果图片不是"下载"但更多的是一个更大的整体(比如说,只是你网站上的一个图像),一个Captcha可以用来验证一个人,然后让他们访问整个网站。或者,如果是下载,则会在解锁下载之前显示。

不幸的是,Captchas是"痛苦,"既可以设置,也可以为最终用户设置。它们对于通用访问没有多大意义,它们有点过分。

对于通用内容,您实际上只能限制IP,下载限制等。即使在那里,如果请求被分发,你也无能为力。他们休息了,真的......