为用户上传的文件提供安全性

时间:2014-01-30 10:15:44

标签: php web-services .htaccess security encryption

我有一个PHP网站,我希望通过加密/解密或为相应目录提供密码安全来保护用户上传的图像和文件。

这样只有该用户才能看到它而其他用户将无法看到或下载它。

我试图使用.htaccess来保护它,它限制外部用户访问该目录。但是我将这些图像链接传递给Android和iOS APP。由于.htaccess给出的限制,这些APP无法显示这些图像。

如果您有任何建议要保护它,请告诉我。

1 个答案:

答案 0 :(得分:0)

我建议您将上传的图像放入一个不可公开访问的文件夹中,然后创建一个脚本getimg.php或其他某种程度的脚本,检查当前用户是否可以访问该图像,如果可以的话,然后做这样的事情来提供图像:

header("Content-Type: image/jpeg"); 
$file = file_get_contents("/path/to/filestore/user2/file.jpg");
header("Content-Length: ".strlen($file));
echo $file;
exit();

如果用户没有访问权限,您可以返回403禁止

header("HTTP/1.1 403 Forbidden");
echo $errorMessage;
exit();