[英]Set HTTP username/password from PHP
我有一个设置,使用直接链接无法下载文件,除非使用HTTP身份验证提供用户名/密码。
我想创建一个链接到下载的页面,当访问时,它会设置HTTP用户名和密码,因此用户永远不会看到HTTP身份验证框。 (但是,如果他们试图直接下载文件,他们就不能。)
$_SERVER['PHP_AUTH_USER']
和$_SERVER['PHP_AUTH_PW']
提供了一种读取但不设置这些值的方法。
您可以通过在URL中放置用户名和密码来访问HTTP-auth链接:
http://username:password@archive.example.com/path/to/file.zip
请注意,并非所有浏览器都支持此表示法,或者在浏览器中可以对用户进行配置支持。 您需要在对您很重要的平台上进行测试。
请注意,您的问题很可能是更好的解决方案。
这是一个坏主意! 身份验证是为了确保您就是您所说的人 。 相反,您将其用作控制对给定资源的访问的方法。
如果要强制某人通过网关页面,请生成随机查询字符串,匹配时,使用header()
设置HTTP元数据,使用fpassthru()
或sendfile()
发送内容。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.