1

I have created some free HTML Templates, to share them for free, but I would like to know where my templates are installed.

What I have in my mind, in order to track the template installation, is to create a php script that will generate a single pixel image. I would like to use that image to collect information about the web site that loads my picture.

So, how can I know which server is requesting my image? Any ideas?

4

3 回答 3

3

尝试使用$_SERVER['HTTP_HOST']. 或者如果你需要别的东西,试试这里:http ://www.php.net/manual/en/reserved.variables.server.php

于 2012-05-17T13:03:12.323 回答
2

当您生成单像素图像时,请包含您感兴趣的信息,例如此类。然后检查您的服务器日志。

echo '<img src="onepixel.png?servedby='.$_SERVER['HTTP_HOST'].">';
于 2012-05-17T13:04:28.143 回答
2

显然,您所做的任何事情都可能被删除,因为一旦获得您的模板代码,用户就可以删除引用以追溯您的脚本。

从服务器加载像素会起作用,您可以访问 $_SERVER 中的数据以查找有关请求的一些信息并寻找引荐来源网址。

一个更好的主意,IMO,是编写一些存在于您的服务器上的 JavaScript 代码,并通过<script src="..."></script>您的模板上的标签包含在内。这将允许您通过动态创建图像源标签来“打电话回家”,以将此像素发送到您的服务器,并提供有关源的更多信息。

例如,您可以像这样简单:

(function()
{
    var img = document.createElement('img'),
    src = "//www.yourserver.com/path/to/pixel.php?domain=" + document.domain;

    img.src = src;
})();

这将向您的服务器触发一个像素,并包含加载您的模板的域。您可以添加更多代码来识别浏览器,唯一地跟踪用户 - 看看网站正在获得什么样的流量,无论如何。

确保您不使用任何 3rd 方 JS 库,因为您不想在站点上注入依赖项/增加加载时间。

于 2012-05-17T13:05:06.623 回答