PHPでBasic認証を実装する方法

.htaccessを使わずにPHPでBasic認証を実装する方法になります。

$_SERVER[‘PHP_AUTH_USER’]にて判定を行えば実装ができます。

$loginId = 'ログインID';
$loginPw = 'ログインパスワード';

if ( !isset( $_SERVER['PHP_AUTH_USER'] ) ) {
    header( 'WWW-Authenticate: Basic realm="Private Page"' );
    header( 'HTTP/1.0 401 Unauthorized' );
    die( "private area" );
} else {
    if ( $_SERVER['PHP_AUTH_USER'] != $loginId
    || $_SERVER['PHP_AUTH_PW'] != $loginPw ) {
        header( 'WWW-Authenticate: Basic realm="Private Page"' );
        header( 'HTTP/1.0 401 Unauthorized' );
        die( "Please try again" );
    }
}

今まで、.htaccessで実装してきましたが

phpだけでも実装できるのですね。これは便利です。

ただ、Basic認証は平文での通信となるためあまりセキュリティ的には好ましくはございません。

おすすめ記事


コメントを残す




Menu

HOME

 TOP