如何使用 php 跟踪热链接器 IP 地址


How can i track hot linkers ip address using php

在我的服务器中有一张名为/images/pic.jpg的图片。我想跟踪尝试直接通过网址访问该图片的用户的 IP 地址 www.domain.com/images/pic.jpg。我可以通过以下方式跟踪手动用户的IP地址:

<?php $ipAddress = $_SERVER['REMOTE_ADDR']; ?>

您可以创建一个拦截PHP脚本,该脚本将负责处理对存储在特定文件夹中的图像的所有请求。假设您的所有图像都位于images/文件夹中。您只需要创建一个重写规则,该规则会将对该文件夹中文件的所有请求重定向到 PHP 脚本。

RewriteRule images/(.+)'.(jpg|gif|png) images.php?image=$1.$2

这样,您仍然可以像以前一样在标记中使用图像。

<img src="images/logo.png" />

请注意,此方法可能会对系统性能产生严重影响,因为由于每次都调用 PHP,因此对图像资源的所有请求现在都会产生处理开销。

如果他们直接访问图像,则无法使用PHP进行任何跟踪,然后解析access_logs并查看谁在请求该文件。

最好的选择是使用 PHP 来提供图像本身。这样,您就可以通过PHP跟踪谁在请求它。

例:

<img src="image.php?imagename.jpg">