浏览 1.7k
1、PHP代码:xx.com/mp3down/index.php
<?php
//程序根目录
define('ROOT_PATH', dirname(dirname($_SERVER['SCRIPT_FILENAME'])).'/');
$txtpath = '《官场女人》/官场女人 01.mp3';
$_file = ROOT_PATH.$txtpath;
// 文件不存在
if(!is_file($_file)){
exit('文件不存在,可能已被删除');
}
$speed = 200; // 200KB/s
$_file_limit_size = round(intval($speed) * 1024);
// 启用 nginx X-Accel 下载
header('Content-Type: application/octet-stream');
$encoded_fname = rawurlencode('官场女人01.mp3');
header('Content-Disposition: attachment;filename="'.$encoded_fname.'";filename*=utf-8'."''".$encoded_fname);
header('X-Accel-Buffering: yes');
// 不限速下载
if($speed !== ""){
header('X-Accel-Limit-Rate:'.$_file_limit_size);
}
header('X-Accel-Redirect: /mp3down/'. $txtpath);
exit;
?>2、宝塔面板->网站->xx.com->设置->伪静态,在里面配置规则如下:
location /mp3down {
internal;
root /www/wwwroot/xx.com/;
}3、重启nginx
4、访问步骤1的网址,无法实现下载,浏览器页面提示如下:
无法访问此网站网址为 https://xx.com/mp3down/index.php 的网页可能暂时无法连接,或者它已永久性地移动到了新网址。
ERR_INVALID_RESPONSE
按点赞数排序
按时间排序
sticky模块只能在linux下吧,win下没有。tomcat好像有个session复制吧,或者可以用共享session。
没办法完全不受影响的,因为mirror是子请求,当子请求未结束时,主请求消耗的内存至少是无法释放的。你可以尝试在/mirror里,把超时时间大幅度调低,包括connect/read/send,再压下看看。
微信公众号
加入微信群