2012-04-24 54 views
-5

我正在创建一个工作网站,员工将上传简历/简历。阻止人们从网站上窃取文件

我该如何阻止他人查看其他人的简历并停止搜索引擎索引此内容?

+4

只是阻止URL'HTTP:沿东西线使用的htaccess或使用不同的方法 – 2012-04-24 20:40:53

+0

,这取决于你的需要和情况,你有没有发布。 – Lalajee 2012-04-24 20:42:08

+0

@Lalajee // YourSite/downloadAllResumes' – Brad 2012-04-24 21:09:45

回答

5

您可以使用身份验证系统,并且不会将公开网址呈现给下载程序。 例如,创建一个表,如:

file_name | file_path   | file_code 
------------------------------------------------------- 
My picture | /var/docs/img.jpg | kljsldjalksdqhq1218 

而在用户登录(并满足您定义的标准)后,你送他的下载链接:

http://yoursite.com/index.php?page=download&file=kljsldjalksdqhq1218

然后您查询数据库,检查正确的关联,然后读取文件 - 位于文档根btw之外,例如使用file_get_contents(),并将其作为八位字节流或其他适当的MIME用于文件类型,以强制文件下载;

header('Content-Type: "'.$mime.'"'); 
header('Content-Disposition: attachment; filename="'.$filename.'"'); 
header("Content-Transfer-Encoding: binary"); 
header('Expires: 0'); 
header('Pragma: no-cache'); 
header("Content-Length: ".strlen($file)); 
+3

除此之外,请不要将系统中的文件保存为与用户上传的文件相同的文件。您可以挂在该文件名上,以便稍后用户下载时,可以将其退回,但本地系统上的文件名应该是随机的,并且没有扩展名。 – Brad 2012-04-24 21:08:53

+0

我已经下了上传文件的时间作为名称,并在最后没有EXE。这是链接domain.com/download.php?id=2。这然后检查表中的id并且用户可以下载该文件。我已经完成了你在这个回复中所写的内容。我的文件是否仍然可以从我的服务器上获取? – Lalajee 2012-04-28 10:09:56

10

简单。没有一些认证,不要让这些文件可用。

+1

,并在相关页面的元素中加入。 – SimSimY 2012-04-24 20:41:39

+0

你必须登录才能查看文件,但我不会隐藏我的雇主和雇员的保存路径。 – Lalajee 2012-04-24 20:42:51

+0

也许还有一些授权吗? – 2012-04-24 20:44:39