如何在 NGINX 服务器上使用 PHP 计算 PDF 下载次数 - Apache 重写规则的转换

如何在 NGINX 服务器上使用 PHP 计算 PDF 下载次数 - Apache 重写规则的转换

我找到了出色的重写规则和一个 PHP 脚本,可用于Apache计算某些文件类型的下载次数。我需要将其转换为NGINX友好形式。Apache重写规则如下:

RewriteEngine on    
RewriteRule ^(.*).(rar|zip|pdf)$ http://xy.com/downloads/download.php?file=$1.$2 [R,L]    

下载脚本是这里

我正在尝试做同样的事情NGINX

当下载任何 pdf 文件时,脚本必须拦截下载,以便我可以跟踪它。我想跟踪两件事,下载的次数和下载的 IP 地址。

我最接近的答案是这样的:

location / {
   rewrite ^(.*).(rar|zip|pdf)$ /track-downloads.php?file=$1 break;
}

但该规则不起作用,它没有被调用。还请注意标签location

我在 NGINX 的博客上找到了一些关于重写规则转换的其他技巧,这里,但这些转换是相当简单的主流转换。

我已经在 Google 上搜索了好久了。在 Google 上搜索“下载 PDF 文件时执行自定义 php 脚本 nginx”等短语时,问题在于返回的结果太多,都与 PHP 无法正常工作以及想要下载而不是提供文件有关。

任何帮助或指导都将不胜感激。顺便提一下,两个 NGINX 环境是 Laravel Valet 和 Virtualmin 控制面板。

相关内容