Nginx

この章では、Nginxをインストールし、リバースプロキシを構築します。
よくあるパターンとして以下の例を勉強していきます!

  • SSL証明書設定
  • Webアプリへのリバースプロキシ
  • 複数サーバへのServerNameでの振り分け
  • 同種別サーバへの負荷分散設定
  • TCPロードバランサー
  • PHP-FPM連携

準備

rootに昇格

便利ツールインストール

SELinux停止

反映

Nginxインストール

EPELリポジトリ登録

Nginxインストール

起動

ファイアウォール

動作確認

http://192.168.11.231/ へアクセス

証明書

自己証明書作成

HTTPSをListenする設定

  • /etc/nginx/nginx.conf

コンフィグテスト

起動

ファイアウォール

動作確認

https://192.168.11.231/ へアクセス

Webアプリへのリバースプロキシ(NextCloud)

インストール

nextcloud

nextcloudコンテナの動作確認

proxy_passを設定

  • /etc/nginx/nginx.conf

全体

hostsに追記(ローカル)

複数サーバへのServerNameでの振り分け

Mattermost(チャットアプリ)を起動

nginx.confの修正

設定反映

hostsに追記(ローカル)

ロードバランサー(負荷分散)

nginxを2台起動

1台目

2台目

nginx.confへ追記

hostsに追記(ローカル)

動作確認

  • ブラウザでアクセス or curl https://nginx-lb.vamdemic.com/ --insecure -H "User-Agent: hoge"

TCPロードバランサー

Postgresqlを動作させる

Nginx設定

firewall

動作確認

https://tableplus.com/

postgres

php-fpm連携

php7.4用リポジトリ登録

phpインストール(php7.4)

  • php-fpmも一緒にインストール

設定変更

  • デフォルト設定がApache向けのようなので変更
  • 高速化のためWebソケットで動作させる

phpinfo作成

php-fpm再起動

nginx設定変更

nginx再起動

hostsに追記(ローカル)

動作確認

https://php.vamdemic.com/へアクセス

付録

動作している仮想マシンのovaファイルです。うまくいかない場合、こちらをインポートしていただき設定値をご確認いただければと思います!

https://vamdemic.sharepoint.com/:f:/s/vamdemicsystem/Ev8PMm4hm51Arfximf9punkBKIoGya9blqdZMmC2KbWc-w?e=yblewM
pass: nginx

参考サイト