我通过 PHP 请求从网络服务器下载文件,例如在网络服务器上它存储为 LA6zneL.pdf,但用户必须使用其原始文件名获取它。所以我打电话给这个网址
LA6zneL.pdf?f=William Stallings Computer Organization and Architecture 8th Edition.pdf
用户通过 Firefox/Safari/Opera 下载文件名
William%20Stallings%20Computer%20Organization%20and%20Architecture%208th%20Edition.pdf
但在 Chrome/Internet Explorer 中没问题
William Stallings Computer Organization and Architecture 8th Edition.pdf
我不知道如何通过php完成?在我的脑海中,解决方案是用 '-' 替换所有 ' ' 字符,例如在f
参数中。
这是 nginx 配置:
add_header Content-Type "application/octet-stream";
add_header Content-disposition "attachment; filename=$arg_f";
谢谢你的时间。
顺便提一句。刚刚在ServerFault上发现了同样的问题,没有回复,希望有人能指点我。 https://serverfault.com/questions/469837/how-to-send-file-names-with-spaces-to-user-with-nginx