如何限制用户下载或保存pdf文件?

时间:2013-02-02 18:14:30

标签: php javascript jquery symfony-1.4

  

可能重复:
  Prevent PDF file from downloading and printing

在我目前的symfony项目中(在管理部分)我上传了pdf文件并使用JavaScript打开它,但是我想限制用户下载或保存该pdf文件?

那么我可以限制用户下载或保存pdf吗?

我的意思是用户只能查看该pdf的内容,我想禁用下载或保存该pdf的所有浏览器的选项。

pdf文件仅在服务器上打开。

行动档案代码:

echo "<span onclick=\"clickme('$pdf_name')\";>view</span>";

成功文件代码:

<script type="text/javascript">
   function clickme(file_name){
     window.open(file_name); 
   }   
</script>

先谢谢你。

3 个答案:

答案 0 :(得分:4)

实际上不可能阻止人们下载任何东西,更不用说PDF了。我担心你不得不选择替代方案,例如只显示文档预览或使用水印。

答案 1 :(得分:1)

一个简单的事实是,如果用户正在查看PDF文件,他们已经将其下载到计算机上的临时目录中。

我一直看到这样的问题(主要是GIF / JPEG),但你必须明白,防止这种情况的解决方案是完全不可能的,因为当你把PDF发送到用户的机器时你已经输掉了游戏。

你可以期待的最好的事情就是让用户难以做到这一点,但是如果付出足够的努力就无法阻止它们。例如,您如何阻止他们截取图片的屏幕截图,或者直接从浏览器缓存中抓取它?

您可以通过设置security flags in the PDF file本身来阻止非精明用户。

答案 2 :(得分:0)

是可以通过文件标题中的强制浏览器

它强制浏览器下载而不是查看它是由Htaccess下来而你可以通过PHP来做

<FilesMatch "\.(?i:pdf)$">
   ForceType application/octet-stream
   Header set Content-Disposition attachment
</FilesMatch>

见下面链接我希望帮助你

link1

link2

link3