この記事にはプロモーションが含まれています。

PHPでhtaccessをいじらずにBASIC認証を実装する方法【コード付き】

PHPでhtaccessをいじらずにBASIC認証を実装する方法【コード付き】

ケケンタ

PHPで特定のページにだけBasic認証をかけたい……

今回はこのようなお悩みをお持ちの方に、PHPのプログラムだけでBASIC認証を実現するためのコードをご紹介します。




ケケンタ

ケケンタのITブログでは、WebアプリPHPLaravel)やWeb制作WordPressコーディング)について情報を発信しています。
学習中の方や実務をされている方など多くの方にアクセスいただいていますので、ぜひほかの記事も参考にしてみてください!


運動不足、気になっていませんか?

もしプログラミング学習やお仕事で運動不足が気になっているなら
連続屈伸運動がおすすめです!

ボタンにカーソルを合わせるだけ
カウントダウンが始まるタイマーをご用意してみました!

ケケンタ

無理のない範囲で、ぜひ隙間時間に屈伸運動を取り入れてみて下さい!

タイマースタート

3:00

※運動不足だと連続3分で取り組んでもかなり息が切れます
(僕は加えて気分もちょっと悪くなりました……)
絶対にご無理の無い範囲でお取り組みください!


目次

PHPで特定ページにBASIC認証をかけるコード(全体)

/**
 * パスワード保護したいページに以下のコードを記述
 */
// ログイン情報
define('USER_ID', 'kekenta');
define('PASSWORD', 'kekenta_pass');

// 認証処理
if (!isset($_SERVER['PHP_AUTH_USER'])) {
    header("WWW-Authenticate: Basic realm=\"My Realm\"");
    header("HTTP/1.0 401 Unauthorized");

    /**
     * キャンセルが押下されたら実行する処理を記述
     */

    exit;
} else {
    if (
        (isset($_SERVER['PHP_AUTH_USER']) && $_SERVER['PHP_AUTH_USER'] == USER_ID) &&
        (isset($_SERVER['PHP_AUTH_PW']) && $_SERVER['PHP_AUTH_PW'] == PASSWORD)
    ) {
        /**
         * 成功したときの処理を記述
         */
    } else {
        /**
         * 失敗したときの処理を記述
         */
        exit();
    }
}

ポップアップの様子

参考:https://www.php.net/manual/ja/features.http-auth.php

ケケンタ

簡単ではありますが、以上となります!

この記事が参考になったなら何よりです。

またどこかの記事でお会いできるのを楽しみにしております。

PHPでhtaccessをいじらずにBASIC認証を実装する方法【コード付き】のアイキャッチ

この記事が気に入ったら
フォローしてね!

この記事が良いと思ったらシェアしてね!
目次