リバースプロキシ込みでドメインを個別に設定する前に、サーバーIPアドレスとドメイン(ワイルドカード指定)の登録を行なう。
設定・編集はNginxのみ。
upstreamブロック(ブロックディレクティブ)の準備
Nginxのupstreamブロックはサーバーグループの定義。
/etc/nginx/conf.d内にupstreamを管理するconfファイルを作成する。
upstream hoge_server_ip {
server <サーバーIP>;
}
今回は使わなかったけど、ローカルループアドレスや接続ポートを指定することも可能。
upstream hoge_apache_web_ip {
server 127.0.0.1:8080;
}
upstreamで指定できないもの
upstreamは内部で参照するものなので、ドメイン名は使えない。例えば以下のようなものは読み込めない。
upstream damepo {
server localhost:8080;
}
upstream exdamepo {
server example.com;
}
サーバーIPアドレスの設定
ドメインを登録して使うので、サーバーIPアドレスは使用しない方針。
※サーバーIPアドレスからアクセスするユーザーはスキャンアクセスやbotなど、大概想定したユーザーではないと思う。
ただし検索エンジンがドメイン名ではなくIPアドレスで検索結果に載せてしまった場合には、301リダイレクトをかけるために有効にする…というケースはあり得る。(事象のみ過去に実例あり)
/etc/nginx/conf.d内に設定ファイルを作成する。
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name hoge_server_ip;
# block
return 444;
}
listenディレクティブには「default_server」を指定する。※指定しておかないと他の設定が有効になるかも。Nginxの設定による。
server_nameディレクティブにはupstreamブロックで登録したhoge_server_ipを指定する。
「return 444;」はNginx独自のエラー。Nginx固有の設定で、コネクションをクローズしてくれる。
ステータスコードで444を返すわけではないので注意。
ドメイン(ワイルドカード指定)の設定
DNSレコードをサーバーに向けたとき、ドメイン個別でNginxの設定をしていないときに表示されるページを設定する。
/etc/nginx/conf.d内に設定ファイルを作成する。
server {
# domain
server_name *.example.com;
location / {
root /home/hogehoge-user/public_html/default_page/;
}
}
(まだ試していないけれど)server_nameは半角区切りで複数指定可能。
server_name *.example.com *.dp-w.net;
いちばんめのサーバー構築の流れ
-
1-1 初期設定
-
1-2 新規ユーザー(一般ユーザー)の作成と設定
-
1-3 Nginx導入とhttpの準備
-
1-4 Nginxの初期設定
-
1-5 php導入
-
1-6 Apache導入と初期設定
-
1-7 リバースプロキシを準備する前の事前知識
-
1-8 サーバーIPアドレスとドメイン(ワイルドカード指定)の設定
-
1-9 ドメイン個別設定とリバースプロキシ構築
-
1-10 Let’s Encrypt(Certbot)を使ったSSL/TLS証明書の発行と自動更新設定
-
1-11 MySQL導入
-
1-12 MySQLのパフォーマンスチューニング
-
1-13 MySQLへのログインと初期設定
-
1-14 MySQLからDB・ユーザーの準備/ユーザーの権限設定
-
1-15 Zabbix導入
-
1-16 (寄り道)Zabbixのアップグレード