laravel或php有禁止下载文件功能嘛
做了一个页面展示pdf的功能,但希望可以禁止浏览者下载浏览的pdf文件
我是用response->file($url);来展示pdf文件的
请问,如何可以禁止别人来下载文件呢?
实现只能浏览,但不提供另存为功能
关于 LearnKu
能看就能存,你这个需求不能实现。可以考虑增加保存成本,比如图片或者啥的。
加个水印
应该不能,因为进行浏览的时候,文件流的内容就已经传输到了客户端,客户端浏览器本地就支持进行保存了。
不能,也许可以通过某些 js 手段,禁止另存为,但是只能防止外行。
禁用f12,鼠标右键
不能使用浏览器默认的header来预览文件 你需要把文件处理后再提供给用户展示 比如切割成图片 然后渲染
如果将 pdf 转为 html 输出到浏览器上怎么样?这样是不是不能下载 pdf ,可以试一下!(但是保不齐他们下载 html 然后转 pdf :see_no_evil:)
不太好实现,浏览器上所见即所得。
禁用 f12,鼠标右键,这样用户就没法在你页面上直接另存为
做防盗链,这样用户没法根据你的链接直接下载
以上两点能防普通人,遇到专业的还是可以下载到,但毕竟也会麻烦写
pdf转为图片.只显示一半,百度文库就是这样做的,看全需要付费,如果本身就是免费内容为什么会有这个需求呢.
像百度文库或者一些专门PDF付费的网站,有些都是通过Canvas绘制展示的,不得不说防的太好了:joy:
我看很多站点的解决方案是把文件都转成了
canvas