Nginxでベーシック認証を行う際の注意点

nginxでベーシック認証を行う際の注意点

Nginxでベーシック認証を行う際、Apacheと同じように.htaccessを設定しても、効果はありません。

Nginxは.htaccessを使った制御は許可しておらず、confファイルを編集して設定する必要があります。

.htpasswdの生成

Nginxでベーシック認証を行う場合、.htaccessを用意する必要はありませんが、.htpasswdは用意しておく必要があります。

コマンドを投入して作成してもよいのですが、htpasswdファイル生成(作成)でファイルを生成し、FTPで特定のフォルダにアップする。というやり方の方が手軽です。

Nginx用confファイルの編集

.htpasswdを用意した後は、実際にconfファイルを編集し、ベーシック認証用の設定を記述する必要があります。

以下のように locationディレクティブに設定する事で反映させる事が出来ます。

location / {
    auth_basic            "Local Security Test"; #表示したいメッセージを記入。
    auth_basic_user_file /var/www/html/.htpasswd; #.htpasswdのパス
}

Nginxを再起動

上記内容を編集した後、Nginxの再起動を行い、設定を反映させます。

sudo service nginx restart

Nginxを再起動しても反映されない場合

私の場合、Ngixnを上記のコマンドで再起動しても設定が反映されませんでした。
一度、Nginxを停止させてから、再度、起動させると無事反映させる事が出来ました。

sudo service nginx stop
sudo service nginx start

SNSでもご購読できます。

コメントを残す

*