有人在“劫持”我的网址

时间:2012-05-30 19:16:53

标签: image http traffic hotlinking

我通过“家庭酿造”Cookie系统跟踪我拥有的域名的流量。在一个网站上,我注意到我从一个特定域(http://www.getbig.com/)获得了大量的HTTP引用流量。我做了一些调查,发现了这个人做了什么。此人试图在论坛上使用我的网站徽标作为他们的头像。但是,而不是链接到“img”标签中的图像:

<img src="http://www.example.com/image.jpg" width="" height="" alt="" border ="" />

他们已链接到我的主域名:

<img src="http://www.example.com/" width="" height="" alt="" border ="" />

每次加载此人在此论坛中发布的页面时,都会注册新的匹配。这是人为地夸大我的访客统计数据,我想阻止它。如果他们只是链接到图像,我可以只更改图像名称,但他们已链接到网站本身,我不知道该怎么做。除了向他们发送“停止和停止”之外,我还有哪些技术选择?

2 个答案:

答案 0 :(得分:1)

我建议查看Referer,如果它来自http://www.getbig.com/,而不是您的网站,则提供您可以在互联网上找到的绝对最肮脏的图像。

虽然向他们发送电子邮件更容易,但是这更容易..(这是我的实际建议)。

答案 1 :(得分:1)

这个原则被称为hotlinking - 或者至少是正确完成的,正如你所指出的那样。有一些解决方案可以“阻止”它的发生。

  1. 最常见的是serve a different page or image而非预期的mod_rewrite。 Apache的generate the .htaccess content(或类似的)允许您根据特定条件重写URL,例如本例中的referer头。您至少需要被允许创建自己的.htaccess文件。有一些工具可以帮助SetEnvIf

  2. 执行此操作的信息量较少的方法是拒绝通过环境变量进行访问。首先根据它查看引用标头deny access和{{3}}。这只会返回HTTP#403响应代码。

  3. 如果您没有这种访问权限,可以在应用程序级别读取referer标头并在那里做出决定。这可能只是部分解决方案,具体取决于内容的传递方式(即请求由Web服务器或其他应用程序层(如PHP)处理)。

  4. 联系相关用户。这样可扩展性较差,如果他们不同意您的请求,则不会阻止他们。

  5. 前三个是一般停止热链接的解决方案。可以调整它们以仅匹配特定的引用者。

    在这种特殊情况下,我怀疑除非你提供回应的图片,否则这些都会产生重大影响。如果URI不包含实际图像名称但仅包含协议和域名,则打开页面的浏览器不太可能显示与img标记相关的任何内容。提供不同的内容不会改变这种情况,除非它是一个图像。提供图像解释为什么您不允许热链接(即使他们请求主页)可能会对用户产生更重要的影响。

    很难评估这些解决方案对您的统计信息的影响程度。假设它们被收集在主页面上,它们可以使数据恢复正常,因为该页面将不再被提供。如果它们基于访问日志,则可能是另一回事。