Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 正在计算从服务器提供映像的次数?_Php - Fatal编程技术网

Php 正在计算从服务器提供映像的次数?

Php 正在计算从服务器提供映像的次数?,php,Php,我想计算一下从我们的服务器接收图像的次数。我在一个网站上有一些图片,我想数一数,当这些图片显示在网页上时(从服务器发送到我的网站,如果是热链接的话)。有没有办法做到这一点。我了解php,所以如果有什么方法可以在php中实现它,那将非常有用 请指教 谢谢。如果您需要解析服务器日志以外的内容,则必须设置一个数据库来管理图像列表以及图像的访问次数。通过一个.php脚本为图像提供服务,该脚本随每个请求增加db值。您也可以使用平面文件系统,但我更喜欢db解决方案 如果实现.htaccess和apache的

我想计算一下从我们的服务器接收图像的次数。我在一个网站上有一些图片,我想数一数,当这些图片显示在网页上时(从服务器发送到我的网站,如果是热链接的话)。有没有办法做到这一点。我了解php,所以如果有什么方法可以在php中实现它,那将非常有用

请指教


谢谢。

如果您需要解析服务器日志以外的内容,则必须设置一个数据库来管理图像列表以及图像的访问次数。通过一个.php脚本为图像提供服务,该脚本随每个请求增加db值。您也可以使用平面文件系统,但我更喜欢db解决方案

如果实现.htaccess和apache的mod_rewrite,就不需要担心映像的源代码。您可以提供如下url:

http://mysite.com/images/001.jpg http://mysite.com/images/001.jpg 在服务器上可以理解为:

http://mysite.com/images.php?id=001 http://mysite.com/images.php?id=001
因此提供了执行数据库操作和脚本逻辑的基础。

您不能查看服务器日志吗?

您应该能够使用日志文件和分析包收集这些信息。如果你运行的是IIS,一个非常好的方法(一个域名免费)就是SmarterTools的SmarterStats。www.smartertools.com

建议查看日志的答案是正确的。但是,如果出于某种原因这是不可接受的,那么配置一个php脚本来处理这一问题并不困难

1) 创建一个重写规则(使用),以透明地重写对图像的请求,改为转到php文件,并将图像的名称作为参数。 2) 您的php脚本可以记录请求,然后为图像发送适当的MIME类型,并将真实文件转储到输出缓冲区(只要您从文件系统加载而不是使用URL流,这不应该受到重写规则的影响).

您可以使用Microsoft的以下查询来查询您的服务器日志:

http://mysite.com/images/001.jpg c:\Program Files\Log Parser 2.2>logparser“选择cs uri词干,从c:\Your\Log\File\Path\ex091002.Log将(*)计算为命中率,其中cs uri词干类似于'imagefilename.jpg',或cs uri词干类似于'anotherimage.jpg'按cs uri词干排序按命中率描述”-i:w3c


如果需要在页面上显示某些内容,甚至可以将其输出到文本文件或图形(我相信需要Excel)。如果使用Apache日志,您可能必须更改查询,但不确定。

如果我通过php脚本提供image,则指向image的url将如下所示。我猜如果我在网页中使用此链接,图像将不会显示。如果我直接点击这个链接就可以了。如果我是,请纠正我wrong@RishiPatel,使用.htaccess,您可以有如下URL:mysite.com/images/001.jpg,您的服务器会将其解释为mysite.com/images.php?id=001。Jonathan的现场。。。如果我正在托管一个我想要跟踪的图像/文件/歌曲,我会通过一个php脚本来提供它,它可以让我记录我需要的任何细节(IP、时间戳、任何用户信息,如果我有用户帐户,等等)。是的,日志就是查看它们是否可用的地方。为什么要重新发明轮子?如果你不想自己解析它们(并不是说grep很难使用),Webalyzer就是你的朋友。@Dathan,可能有一个(不命名任何名字…)想要跟踪每个URL的点击数的变化或变化率,这需要的不仅仅是像Webalyzer这样的简单递增器@Dathan Din不理解“文件系统而不是使用URL流”