【问题标题】:HTTP Authentication PHPHTTP 认证 PHP
【发布时间】:2016-03-17 08:44:38
【问题描述】:
<?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>";
}
?>

我从 php.net 得到这个代码

是否可以设置目标文件夹(或 URL)、用户 ID 和密码? 我不想向用户显示弹出登录窗口

例如)

在标题行之后('HTTP/1.0 401 Unauthorized');

header('URL:./target_folder/')
header('UserID:guest')
header('Password:guest')

【问题讨论】:

  • 我不明白你的意思。请详细说明一下,您的问题没有什么意义。
  • 如果您的意思是您需要定义用户名和密码,这是通过您的网络服务器完成的,而不是通过 PHP。
  • 在这里阅读茶叶...您想重定向到用户名/密码已经“预填充”的不同网址...?!如果是这样,那么首先使用身份验证有什么意义?
  • deceze//web 登录时允许访问(php-MySQL)
  • 你仍然没有多大意义。

标签: php http authentication


【解决方案1】:

我不确定你想要什么,但你可以像这样在 URL 中传递你的用户名和密码:

https://username:password@www.example.com/path

它不会显示任何登录弹出窗口。

文档:https://developer.mozilla.org/en-US/docs/Web/HTTP/Basic_access_authentication

注意安全部分

BA 机制不为传输的凭据提供机密性保护。它们只是在传输过程中使用 BASE64 编码,但没有以任何方式加密或散列。因此,基本身份验证通常通过 HTTPS 使用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-09-22
    • 2012-01-17
    • 1970-01-01
    • 2012-03-22
    • 1970-01-01
    • 1970-01-01
    • 2011-05-03
    • 2020-09-17
    相关资源
    最近更新 更多