nginxでベーシック認証かける方法

テストサイトなどでは基本的にベーシック認証などを使ってアクセス制限かけることが多いと思います。apacheを使えばhtaccessで可能ですが残念ながらnginxはhtaccessを使えないのでconfファイルをいじって対応します

パッケージのインストール

nginx+apacheのリバースプロキシをしている場合は、既にパッケージが入っているかもしれませんが、nginx単体やnginx+nginxのリバースプロキシだとパッケージがないかもしれませんのでない場合はインストールします

.htpasswd ファイルの作成

1$ sudo htpasswd -c /etc/nginx/.htpasswd username
2New password: password
3Re-type new password: password
4Adding password for user username

confファイルに追記

01$sudo vi /etc/nginx/conf.d/default.conf
02 
03server {
04    listen 80;
05    root /usr/share/nginx/html;
06    index index.html index.htm;
07 
08    location / {
09        auth_basic "Restricted";                   # 認証時に表示されるメッセージ
10        auth_basic_user_file /etc/nginx/.htpasswd; # .htpasswdファイルのパス
11    }
12}

参考サイト

NginxでBasic認証させる件

個人支援・寄付について

サイトラボでは個人支援・寄付を受けております。ご協力いただける方はお願いいたします。当サイトではビットコインで受け付けております。

  • ビットコイン:3LHnADwZwUbic2L45EnVJEykiG6KfbqrwS