美文网首页Fastdfs
fastdfs下载时恢复原始文件名

fastdfs下载时恢复原始文件名

作者: 王志满 | 来源:发表于2017-12-04 11:16 被阅读0次

文件被上传到FastDFS后Storage服务端将返回的文件索引(FID),其中文件名是根据FastDFS自定义规则重新生成的 例如:wKgB-lkdxUmAPb-QAAIbD3CxJDw317.txt,而不是原始文件名,使用http下载时如不加处理,显示给用户的文件名会是这样的wKgB-lkdxUmAPb-QAAIbD3CxJDw317.txt,这样的用户体验很不好。由于FastDFS不会存储原始文件名,也不提供回复原始名的方法,我们需要自己实现

那么就需要我们将原始文件名记录在数据库中,在下载的时候将原文件名传递到服务器,然后用nginx获取到原始文件名,在写入响应头里面

http://192.168.1.124:8000/group2/M00/00/00/wKgB-Vkb2yuAEk80AAAABpDVNbM781.txt?attname=name.txt

if($arg_attname ~* \.(doc|docx|txt|pdf|zip|rar|txt)$) {

add_header Content-Disposition"attachment;filename=$arg_attname";

}

相关文章

网友评论

    本文标题:fastdfs下载时恢复原始文件名

    本文链接:https://www.haomeiwen.com/subject/ujwtixtx.html