HTTP Auth через PHP - PHP_AUTH_USER не установлен?

Я попытался реализовать небольшую аутентификацию через http и скопировал этот фрагмент кода из сети, чтобы проверить, будет ли это работать должным образом :

<?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'] никогда не устанавливается! В чем может быть проблема? Я использую сервер Ubuntu 10.04 LTS с Apache / 2.0.63 (Unix) mod_ssl / 2.0.63 OpenSSL / 0.9.7d DAV / 2 Server .

8
задан Christian Ivicevic 13 August 2011 в 10:10
поделиться

1 ответ

Включите PHP-FPM, и он начнет работать.

$valid_passwords = array ("test" => "test");
$valid_users = array_keys($valid_passwords);

$user = 

Включите PHP-FPM, и он начнет работать.

[110]SERVER['PHP_AUTH_USER']; $pass =

Включите PHP-FPM, и он начнет работать.

[110]SERVER['PHP_AUTH_PW']; $validated = (in_array($user, $valid_users)) && ($pass == $valid_passwords[$user]); if (!$validated) { header('WWW-Authenticate: Basic realm="Test"'); header('HTTP/1.0 401 Unauthorized'); die ("Not authorized"); }
0
ответ дан 3 November 2019 в 12:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: