http认证,php 5.3
我喜欢对一些非关键页面进行简单的 http 身份验证。
<?php
if (!isset($_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm="My Realm"');
header('HTTP/1.0 401 Unauthorized');
echo 'Text, der gesendet wird, falls der Benutzer auf Abbrechen drückt';
exit;
} else {
echo "<p>Hallo {$_SERVER['PHP_AUTH_USER']}.</p>";
echo "<p>Sie gaben {$_SERVER['PHP_AUTH_PW']} als Passwort ein.</p>";
}
?>
现在我尝试在服务器上使用 php 5.3 实现它,但它不起作用。 怎么了?
我输入名称和密码,按 Enter 键,页面再次显示对话框。 $_SERVER['PHP_AUTH_USER'] 中没有值。
I like this simple http authenticating for some non-critical pages.
<?php
if (!isset($_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm="My Realm"');
header('HTTP/1.0 401 Unauthorized');
echo 'Text, der gesendet wird, falls der Benutzer auf Abbrechen drückt';
exit;
} else {
echo "<p>Hallo {$_SERVER['PHP_AUTH_USER']}.</p>";
echo "<p>Sie gaben {$_SERVER['PHP_AUTH_PW']} als Passwort ein.</p>";
}
?>
Now I am trying to implement it on server with php 5.3 and it doesnt work.
Whats wrong?
I type name and password, press enter and pages show me dialog again.
No values in $_SERVER['PHP_AUTH_USER'].
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我遇到了同样的问题。根据我的服务提供商的说法,这是旧版本的 php,不能在 php 5.5 和 5.5 上运行。更高。您将必须找到较新版本的 php。
I am experiencing the same problem. According to me service provider, this is an old version of php that doesn't work on php 5.5 & higher. You will have to find a newer version of php.
从 php.net 上的 使用 PHP 进行 HTTP 身份验证 页面:
也许这也适用于本案。 (刚刚注意到这是一个老问题:)
From the HTTP Authentication with PHP page on php.net:
Perhaps this applied to this case. (just noticed this is an old question :)