我想在访问 Web 服务器上的文件时运行 PHP 代码(例如 /../../somefile.pdf)。
当用户第一次访问网站时,我需要显示免责声明。每次访问网页时,我都可以执行 PHP 脚本,但我不知道如何在访问网页文件时运行脚本。这可能吗?
谢谢!
我想在访问 Web 服务器上的文件时运行 PHP 代码(例如 /../../somefile.pdf)。
当用户第一次访问网站时,我需要显示免责声明。每次访问网页时,我都可以执行 PHP 脚本,但我不知道如何在访问网页文件时运行脚本。这可能吗?
谢谢!
当您要跟踪下载时,有两种方法:
<a href="/../../somefile.pdf">..</a>
尝试<a href="/download.php?file=/../../somefile.pdf">..</a>
RewriteRule ^download_directory/(.*)$ /download.php?file=$1 [L,QSA]
在您的文件 download.php 中,您再次有两个选项:
file
,并使用 PHP 回显输出。(此方法不安全,因为用户可能会修改file
参数中的路径并获取他不应该访问的文件。)header('Location: ' . $_GET['file']);
对于原作者来说可能有点晚了,但这正是 MODX静态资源的完美之处。
静态资源是托管在您的服务器上的真实文件的抽象,在这种情况下,您可以像处理标准网页请求一样执行您已经在使用的相同片段/插件。不需要 .htaccess 模组或自定义标头。
更多信息: