当一个用户点击的链接下载一个文件在我的网站,他们去 这PHP文件 这一增量下载反对该文件,然后header()-重定向到实际文件。我怀疑那个机器人是以下载的链接,但是,使下载的数量是不准确的。

  • 我怎么让机器人知道,他们不应该跟着的链路?
  • 有没有方法检测大多数机器人?
  • 是否有更好的方法来计算数量的下载一个文件得到?
有帮助吗?

解决方案

robots.txt: http://www.robotstxt.org/robotstxt.html

不是所有的机器人方面的,但大多数做。如果你真的想要防止的访问通过机器人,使链接到这一职位,而不是一个得到的。机器人不会跟随后的网址。(I.E,使用一个小小的形式,回到现场,带你到URL在的问题。)

其他提示

我想Godeke的robots.txt 答案就足够了。如果你绝对不能让机器人你的反,那么我推荐使用的机器人文件结合不不增加的点击次数一些 共同用户代理机器人.

既的方式是完美的, 但两者的混合物可能是一个小小的更为严格。如果是我,我可能会只是坚持机器人文件,因为它是容易的,可能是最有效的解决方案。

Godeke是正确的,robots.txt 是首先要做的事情,以保持机器人从下载。

关于计数,这是一个真正的网络分析的问题。你是不是让你www访问日志运行他们通过一个分析程序喜欢 (或花哨的替代等Webtrends或胆)?我就去为收集这种信息,因为这很容易和没有PHP,重定向或其他的性命时的用户下载的文件。你只是使用Apache日志,你无论如何。(及 grep -c 会给你的快'n'脏计数在一个特定的文件或通配符的模式。)

你可以配置统计数据的软件忽视命的机器人,或特定用户的代理人和其他标准(如果你改变你的标准以后,你就重新处理旧日的数据)。当然,这并需要你把所有的旧记录,所以如果你已经折腾他们喜欢的东西 logrotate 你必须开始时没有任何历史数据。

你还可以检测到的恶意机器人,不尊重robots.txt 使用 http://www.bad-behavior.ioerror.us/.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top