例如,当我登录到我的路由器的固件时,我会收到用户名和密码的提示框,这是如何完成的?据我所知,JavaScript的prompt()
只返回一个值..我知道它必须是服务器端,因为该页面继续“加载”,直到我关闭框。我也无法在我的浏览器中切换标签,直到盒子关闭。服务器端登录提示框
是否有可能使用PHP来做这样的事情?这是如何完成的?
在此先感谢
例如,当我登录到我的路由器的固件时,我会收到用户名和密码的提示框,这是如何完成的?据我所知,JavaScript的prompt()
只返回一个值..我知道它必须是服务器端,因为该页面继续“加载”,直到我关闭框。我也无法在我的浏览器中切换标签,直到盒子关闭。服务器端登录提示框
是否有可能使用PHP来做这样的事情?这是如何完成的?
在此先感谢
其使用基本HTTP认证,为完成这件事您需要创建用户/密码文件并告诉服务器文件夹需要使用基本HTTP认证。这可以在服务器配置或在的.htaccess
随着Apache
作为Web服务器,你可以做到这一点与htaccess password protection
看看这个页面中的PHP文件来完成 - HTTP authentication with PHP
下面是示例代码,他们给:
<?php
if (!isset($_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm="My Realm"');
header('HTTP/1.0 401 Unauthorized');
echo 'Text to send if user hits Cancel button';
exit;
} else {
echo "<p>Hello {$_SERVER['PHP_AUTH_USER']}.</p>";
echo "<p>You entered {$_SERVER['PHP_AUTH_PW']} as your password.</p>";
}
?>
基本上,您只需发送正确的标题,客户端的浏览器将负责使用正确的字段呈现本地弹出窗口。
一旦用户提交了详细信息,您的代码就可以验证登录,但是您想要使用$_SERVER['PHP_AUTH_USER']
和$_SERVER['PHP_AUTH_PW']
变量。
但是,怎么样!?怎么样? –