Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用户名+;访问图像的密码,PHP_Php_Image_Authentication_Password Protection - Fatal编程技术网

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

用户名+;访问图像的密码,PHP,php,image,authentication,password-protection,Php,Image,Authentication,Password Protection,我有把照片上传到服务器的安全摄像头。无法直接访问这些文件夹,我正在寻找一种解决方案,通过身份验证的用户可以访问他们的照片 解决方案如下: 安全摄像头将照片上载到“/home/myserver/[username]” 用户进入www.example.com,询问用户名和密码 经过身份验证的用户可以访问安全摄像头照片 我有一些想法,但我要求典型的解决方案。解决方案应该是PHP 编辑: 回答得好。我更喜欢包含简单用户管理的解决方案。它应该是为非技术人员准备的。所以我可以添加使用管理员帐户的用户。这就是

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

解决方案如下:

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

    编辑:
    回答得好。我更喜欢包含简单用户管理的解决方案。它应该是为非技术人员准备的。所以我可以添加使用管理员帐户的用户。这就是使用PHP的意义所在。

    您甚至不需要PHP。您可以只通过设置Apache virtualhost来实现这一点。 基本上,您可以使用基本身份验证来验证用户,并使带有图片的目录可列出

    您应该在目录指令中使用此命令,以使特定目录可列出:

    Options +Indexes
    

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


    请参阅以了解流式传输内容的方法。

    另一个简单而高性能的选项是使用
    X-SendFile
    头文件(请参阅apache),该功能内置于Lighty中

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

    例如


    为什么不将htaccess与基于PHP/web的管理界面结合使用呢

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