扫码关注官方订阅号
如题,没有代码描述。或者通过配置apache,怎么来记录这次请求
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
download.php?file=work.zip <?php $filepath = '/data/'.trim($_GET['file']); if(file_exists($filepath)) { log($filepath); } header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="'.basename($filepath).'"'); //方法1:交给Nginx输出(Nginx有AIO线程池,不会阻塞) header("X-Accel-Redirect: $filepath"); //方法2:PHP自己输出(PHP进程会被阻塞) //readfile($filepath);
最简单的方法:用户下载文件先请求,php编写的记录下载的地址,记录下你需要的信息。然后在使用php的 header函数跳转到真正的下载文件地址
<?php $file_name = '9567b94e440700226e003fb9258dd733.png'; //下载的文件名 header("Content-Disposition:attachment;filename=".$file_name.""); readfile($file_name); $header = $_SERVER['HTTP_USER_AGENT']; //用户UA $ip = $_SERVER['REMOTE_ADDR']; //用户IP
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
最简单的方法:用户下载文件先请求,php编写的记录下载的地址,记录下你需要的信息。然后在使用php的 header函数跳转到真正的下载文件地址