最近、現場でnginxを触り始めたので学んだ事を細々とメモします。
パッケージインストール
htpasswdコマンドを使用するため下記パッケージをインストールする
$ sudo yum install httpd-tools
.htpasswdファイルの作成
$ sudo htpasswd -c /etc/nginx/.htpasswd <ユーザ名>
New password:
Re-type new password:
Adding password for user <ユーザ名>
nginx.confに下記を追記
auth_basic "<認証領域名>";
auth_basic_user_file /etc/nginx/.htpasswd;
設定例
/etc/nginx.conf
# ワーカプロセス数
worker_processes 1;
# エラーログ出力先
error_log /var/log/nginx/error.log;
# PIDファイルの配置先
pid /var/run/nginx.pid;
# 1ワーカプロセスが同時オープン可能なファイルディスクリプタ数最大値
worker_rlimit_nofile 1024;
events {
# 1ワーカプロセスが同時オープン可能なコネクション数最大値
worker_connections 512;
}
http {
# アクセスログ出力先
access_log /var/log/nginx/access.log;
# nginxに常時接続しているクライアントに対するタイムアウト時間
keepalive_timeout 10s;
server {
listen 80;
location / {
# 全てのアドレスを許可
allow all;
# Basic認証有効化
auth_basic "Login Authentication";
# パスワードファイルの指定
auth_basic_user_file /etc/nginx/.htpasswd;
# プロキシ設定
proxy_pass http://xxx.xxx.xxx.xxx:80;
}
}
}
nginxを再起動
$ sudo service nginx restart