关于pdf预览问题的求助
使用场景是我提前用pdfjs搭建了pdf 的预览服务,这样就能在手机电脑上都能预览pdf了,其中pdfjs的服务网址是http://xxxxxxx/file/viewer.html?file=
但是把,chrome可以预览pdf文件的,这样就可以实现pdf的下载了。
我的目的是设置
http://xxxxxxx/file/viewer.html?file=http://xxxxxxx/report/0000a383cb0e43f498438205711df2fb.pdf
这个是可以预览的
但是单独打开
http://xxxxxxx/report/0000a383cb0e43f498438205711df2fb.pdf
是不可以打开的,无法进行预览
我用的是nginx搭建的服务,请问能如何设置一下呢,我记得是可以的,前几天碰到过类似的场景,是设置域名白名单嘛?希望有大佬可以帮助一下!万分感谢 本帖最后由 thinkflyer 于 2023-11-3 21:58 编辑
这个取决于你xxxx 是别人的还是你的域名, 如果是自己的域名 完全可以单独对这个xxx域名进行限制,只允许 xxx 在自己服务器上打开。 其他ip 全部 deny掉就可以了。
使用nginx 的 deny allow 指令 thinkflyer 发表于 2023-11-3 21:56
这个取决于你xxxx 是别人的还是你的域名, 如果是自己的域名 完全可以单独对这个xxx域名进行限制,只允许 x ...
都是自己的域名,我试过这样的,当我把http://xxxxxxx/report/0000a383cb0e43f498438205711df2fb.pdf
这个域名deny之后
http://xxxxxxx/file/viewer.html?file=http://xxxxxxx/report/0000a383cb0e43f498438205711df2fb.pdf
也无法预览了。。。 Dellevin 发表于 2023-11-3 21:59
都是自己的域名,我试过这样的,当我把http://xxxxxxx/report/0000a383cb0e43f498438205711df2fb.pdf
这 ...
你可以新建一个二级域名 交 pdf.xxx , 不能和网站域名相同。
或者对report 目录单独限制
location /report {
root /opt/data/pdf;
deny all;
allow 192.168.135.1;
}
仅供参考 thinkflyer 发表于 2023-11-3 22:05
你可以新建一个二级域名 交 pdf.xxx , 不能和网站域名相同。
或者对report 目录单独限制
location /re ...
server{
listen 80;
server_name localhost;
location /file/ {
add_header Access-Control-Allow-Origin *;
aliasD:/pdfview/web/;
index index.html index.html;
}
location /ff/ {
add_header Access-Control-Allow-Origin *;
alias d:/pdfview/build/;
index index.html index.html;
}
location /build/ {
add_header Access-Control-Allow-Origin *;
alias d:/pdfview/build/;
index index.html index.html;
}
location /report/ {
deny all;
add_header Access-Control-Allow-Origin *;
alias d:/pdf/;
index index.html index.html;
}
}
我就是这样设置的
http://xxxxxxx/file/viewer.html?file=http://xxxxxxx/report/0000a383cb0e43f498438205711df2fb.pdf
就无法预览了 看起来很高级PDF有时候挺方便有时候很难搞 wps里面由预览pdf的按钮开关 sai609 发表于 2023-11-4 10:18
wps里面由预览pdf的按钮开关
我想实现一个网络的在线预览的方式{:1_923:} 如果pdf文件不是你的,别人可以把.pdf控制为下载或者预览。
如果.pdf文件是你的,完全没必要搭建pdfjs,宝塔上传的.pdf就能在线预览,如果你想实现下载功能,写一个按钮,点击就保存本网页内容,就是把.pdf下载下来。 你这个需求貌似有冲突啊,这个 pdfjs 是前端执行的,预览就必须要下载这个 PDF 文件(禁止访问后,那肯定就无法下载以及预览了)。虽然可通过 Origin 或者 Referer 请求头进一步限制(Origin Nginx配置方式示例:https://blog.csdn.net/qq_33204709/article/details/129232198),但这两个请求头通过发包软件伪造后依然可以下载到 PDF 文件
页:
[1]
2