Skip to content

Basic認証(PHP)

通常は、設定ファイル「.htaccess」を使用してWebサイトにBasic認証を設置するがPHPのサンプルを記述する。

設置方法

下記内容を「PHP」内に記述してサーバの公開領域に設置する。

phpコード

<?php
$user = 'ユーザ名';
$pw = 'パスワード';

if (!isset($_SERVER['PHP_AUTH_USER’]) || !isset($_SERVER[’PHP_AUTH_PW’]) ||
    $_SERVER[’PHP_AUTH_USER’] != $user || $_SERVER[’PHP_AUTH_PW’] != $pw) {
    header(’WWW-Authenticate: Basic realm=&quot;ender your id, password&quot;’);
    header(’HTTP/1.0 401 Unauthorized’);
    exit;
}

echo '正常な処理を記述';

?>

適用されない場合

$_SERVER['PHP_AUTH_USER']が取得できていないので下記をhtaccessに追加する。

RewriteEngine On
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]

注意点

DANGER

Webサーバ「Apache」で動作可能です。「nginx」では利用できません。