PHP Version 5.3.10
我在Windows网络上使用Apache,当我调用$ _SERVER ['REMOTE_USER']时,它工作正常,直到用户输入密码到期宽限期(你的密码有效期为x天),他们看到的只是这条消息:
需要授权服务器无法验证您是否有权访问所请求的文档。要么你提供了 错误的凭据(例如密码错误),或者您的浏览器没有 了解如何提供所需的凭证。
有没有办法捕获这个并向用户提供更有用的信息?
更新 感谢Fred提供了有用的信息。我将以下行添加到.htaccess
ErrorDocument 401 /401.php
并将401.php添加到与.htaccess相同的文件夹中,我在尝试访问该网站时立即收到以下错误:
需要授权此服务器无法验证您的身份 授权访问所请求的文件。要么你提供了 错误的凭据(例如,密码错误),或者您的浏览器没有 了解如何提供所需的凭证。
此外,遇到401 Authorization Required错误 尝试使用ErrorDocument来处理请求。
作为测试,我还添加了
ErrorDocument 404 /404.php
并且正确地给出了替代页面未找到消息。
我不确定你的意思是“然后抓住错误,你只需要使用一个函数写入文件”。你有一个例子吗?以下是我用来获取用户用户名的代码:
$domain = $_SERVER['REMOTE_USER'];
$domainarray = explode("\\",$domain);
$username = strtolower ($domainarray[1]);