用户名+访问图像的密码,PHP

时间:2011-03-01 08:20:32

标签: php image authentication password-protection

我有安全摄像头将照片上传到服务器。无法直接访问这些文件夹,我正在寻找经过身份验证的用户可以访问其照片的解决方案。

解决方案是这样的:

  1. 安全摄像头将照片上传到“/ home / myserver / [username]”
  2. 用户访问www.example.com,询问用户名和密码。
  3. 经过身份验证的用户可以访问安全摄像头照片。
  4. 我有一些想法,但我要求的是典型的解决方案。解决方案应该是PHP。

    修改 好的答案。我更喜欢包含简单用户管理的解决方案。它应该是非技术人员的事情。所以我可以使用管理员帐户添加用户。这就是使用PHP的重点。

4 个答案:

答案 0 :(得分:2)

你甚至不需要PHP。您可以通过设置Apache虚拟主机来完成。 基本上你可以使用基本身份验证来验证用户,并使目录中的图片可以列表。

http://httpd.apache.org/docs/current/mod/mod_auth_basic.html

您应该在Directory指令中使用它来使特定目录可列表:

Options +Indexes

答案 1 :(得分:0)

将文件放在互联网上的不可读位置(文档根目录之外)。创建一个简单的基于PHP的登录脚本,让PHP列出位于文档根目录之外的所有文件(PHP可以读取这些文件)。如果用户单击该文件,请使用PHP打开该文件,设置正确的HTTP标头并将其内容流式传输到用户的浏览器。非常安全。

有关流式传输内容的方法,请参阅fpassthru

答案 2 :(得分:0)

另一个简单而高性能的选项是使用X-SendFile标题(请参阅this module for apache),该功能内置于Lighty中。

使用简单的PHP脚本列出非Web可访问目录中的文件。要启动下载,只需将X-SendFile标头设置为文件路径,Apache将处理其余部分。

E.g。

if($loggedin && file_exists($filepath)) {
    header("X-SendFile: $filepath");
    exit;
}

答案 3 :(得分:0)

为什么不将htaccess用于基于PHP / web的管理界面,例如PHPAccess