nginx -t の使い方
nginx の設定を確認
書き方
nginx -t
設定ファイルの文法をチェックします。
よく使うオプション
| オプション | 意味 |
|---|---|
-t | 設定ファイルの書き方を確かめる |
-T | 確かめたうえで、読んだ設定を全部出す |
-s reload | 動いている nginx に設定を読み直させる |
-v / -V | 版を出す(-V はビルドの設定も) |
例
$ sudo nginx -tnginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful/etc/nginx/nginx.conf と、そこから読む conf.d/*.conf の書き方を確かめます。
$ sudo nginx -t -qnginx: [emerg] directive "proxy_pass" is not terminated by ";" in /etc/nginx/conf.d/app.conf:9
nginx: configuration file /etc/nginx/nginx.conf test failed-q を付けると、OK のときは何も出ません。誤りがあると、ファイルと行番号が出ます。この例は ; の書き忘れです。
$ sudo nginx -t && sudo nginx -s reload
確かめて OK のときだけ読み直します。止めずに設定を反映できます。
$ sudo nginx -T | grep -n server_name
読んだ設定を全部出し、server_name がどのファイルのどこに書かれているか探します。
よくある間違い・注意
- 設定を変えたら reload の前に nginx -t をします。誤りのまま restart すると、サイトが止まります。
- nginx から裏のアプリにつなげないとき(502)は、SELinux で httpd_can_network_connect が off のことがあります。
実際に打って練習する
Linux レベル2 コースの Lv74「取り次ぎ役 nginx」で覚えます(第6章 館と広間(Web と共有のサーバー))。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。
すべてのレベルが、ゴールド以上のプランで遊べます。