我想使用htaccess和htpasswd文件和服务器端代码的php创建一个登录系统,但是当用户登录时,我希望能够识别该用户,因此我如何知道用户输入的内容使用PHP代码的用户名(我认为如果密码设法访问了限制页面,我不需要知道密码)?

非常感谢,本

有帮助吗?

解决方案

您只需要以下内容即可获取当前正在使用的经验验证会话的用户名:

$_SERVER['PHP_AUTH_USER']

Rev1

鉴于 @ben的评论,我现在在PHP文档中找到了该部分 HTTP身份验证带有PHP 这解释了发生了什么:

从PHP 4.3.0开始,为了防止某人编写脚本,该脚本揭示了通过传统外部机制进行身份验证的页面的密码,如果启用了该特定页面和安全的外部身份验证,则不会设置PHP_AUTH变量模式已启用。不管, REMOTE_USER 可用于识别外部认可的用户。因此,您可以使用 _SERVER['REMOTE_USER'].

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top