我有关于阻止下载和保存上传文件的问题。将上传的文件转换为无法下载的特定文件格式
我的用户可以上传多个文件类型,如DOC,PDF,PPT等....
此,如果任何一个有网址所有文件类型轻松下载。
那么有什么更好的方法来防止文件的下载。
或者我上传的文件转换为不能方便地下载一些特定的格式(例如闪存)..
我PHP和MySQL运行。
感谢
阿维纳什
我有关于阻止下载和保存上传文件的问题。将上传的文件转换为无法下载的特定文件格式
我的用户可以上传多个文件类型,如DOC,PDF,PPT等....
此,如果任何一个有网址所有文件类型轻松下载。
那么有什么更好的方法来防止文件的下载。
或者我上传的文件转换为不能方便地下载一些特定的格式(例如闪存)..
我PHP和MySQL运行。
感谢
阿维纳什
您在这方面有两种选择。首先是通过PHP脚本将文件移动到服务器Web目录之外的服务器端文件夹。第二种是将文件存储在MySQL表中的BLOB列中。两者都将阻止用户直接访问文件,而无需将文件转换为不易下载的格式。
上传文件根目录之外的文件。例如:
/var/username/uploads/file.docx
在您的文档根目录为
/var/username/public_html/index.php
因此他们不能直接访问。然后,如果你想允许下载,创建一个名为“的download.php”一个PHP文件类似的东西:
$data = file_get_contents('/var/username/uploads/file.docx');
header('Content-Type: application/docx');
header('Content-Length: '.strlen($data));
header('X-Content-Type-Options: nosniff');
echo $data;
,显然你可以添加检查,以查看用户是否具有适当的权限下载此特定文件或已登录。
解决方案可以将用户和密码设置为上传文件夹,因此只有知道验证细节的用户才能下载文件。 检查下一个链接,了解如何使您的服务器文件夹的htpasswd文件:
http://httpd.apache.org/docs/1.3/programs/htpasswd.html
考虑会发生什么,如果我上传的PHP文件 – Cheekysoft 2010-03-04 09:56:41