用户名+;访问图像的密码,PHP
我有把照片上传到服务器的安全摄像头。无法直接访问这些文件夹,我正在寻找一种解决方案,通过身份验证的用户可以访问他们的照片 解决方案如下:用户名+;访问图像的密码,PHP,php,image,authentication,password-protection,Php,Image,Authentication,Password Protection,我有把照片上传到服务器的安全摄像头。无法直接访问这些文件夹,我正在寻找一种解决方案,通过身份验证的用户可以访问他们的照片 解决方案如下: 安全摄像头将照片上载到“/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;
}