Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.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身份验证的HTTP身份验证_Php_Javascript - Fatal编程技术网

使用PHP身份验证的HTTP身份验证

使用PHP身份验证的HTTP身份验证,php,javascript,Php,Javascript,我正在为我的网站创建一个会员区,我已经让它运行了。我使用mysql和php对成员进行身份验证,效果非常好 但现在出现了问题,我想为会员提供一个上传文件到系统的可能性,这些文件应该只对登录会员可用 我知道我可以将这些文件存储到数据库甚至文件系统中,并通过php为它们提供服务,但当成员上传更大的文件时,这会对服务器造成很大的负担。这些文件可能是20MB甚至更大 我想让apache为这些文件提供服务,但只需要找到一种自动执行http身份验证的方法,这样用户就不需要登录两次。我认为在一个用户名和密码之后

我正在为我的网站创建一个会员区,我已经让它运行了。我使用mysql和php对成员进行身份验证,效果非常好

但现在出现了问题,我想为会员提供一个上传文件到系统的可能性,这些文件应该只对登录会员可用

我知道我可以将这些文件存储到数据库甚至文件系统中,并通过php为它们提供服务,但当成员上传更大的文件时,这会对服务器造成很大的负担。这些文件可能是20MB甚至更大


我想让apache为这些文件提供服务,但只需要找到一种自动执行http身份验证的方法,这样用户就不需要登录两次。我认为在一个用户名和密码之后进行http身份验证是可以的,比如当用户登录到php和mysql身份验证时,javascript等会透明地同时进行http身份验证,每个成员都会使用相同的凭据进行http身份验证。当然,我不想将这些http身份验证凭证存储在javascript文件中,但类似ajax的解决方案可能会起到作用。我只是不知道该怎么做

退房。我认为那里采取的方法与您的问题非常相似。

请查看。我认为那里采取的方法与您的问题非常相似。

您似乎混淆了身份验证(您提供了一些登录方式)和HTTP身份验证(您专门使用HTTP协议进行身份验证,并且浏览器向用户显示了一个弹出窗口)

您可能需要前者,以便可以设置登录页面的样式。在这种情况下,您必须使用PHP或一些脚本语言来检查用户是否已登录。或者是一些网站的好解决方案;他们速度快,适合这类工作


如果您真的想在web浏览器中而不是在PHP中进行文件处理工作,一种解决方案是创建唯一的、短期的文件名。例如,您可以使用在PHP中创建指向该文件的硬链接,然后将用户重定向到临时文件名。将硬链接存储在数据库中,并在短时间后将其删除。

您似乎将身份验证(您提供了一些登录方式)与HTTP身份验证(您专门使用HTTP协议进行身份验证,并且浏览器向用户显示一个弹出窗口)混淆了

您可能需要前者,以便可以设置登录页面的样式。在这种情况下,您必须使用PHP或一些脚本语言来检查用户是否已登录。或者是一些网站的好解决方案;他们速度快,适合这类工作

如果您真的想在web浏览器中而不是在PHP中进行文件处理工作,一种解决方案是创建唯一的、短期的文件名。例如,您可以使用在PHP中创建指向该文件的硬链接,然后将用户重定向到临时文件名。将硬链接存储在数据库中,并在短时间后将其删除