Nginx(エンジンエックス)は、高性能なWebサーバーおよびリバースプロキシサーバーです。Apacheと並んで広く利用されており、軽量で高い並行処理能力を持っています。特に大量の同時接続を処理する能力に優れており、静的コンテンツの配信やロードバランサーとしても利用されることが多いです。
nginxとは・読み方
nginxはオープンソースのWebサーバです。
nginxはエンジンエックスと読み、以下特徴があります。
nginxの特徴
- 処理性能が高い
- 高い並行処理性能を持つ
- メモリ使用量が少ない
- 高機能(リバースプロキシやロードバランサとして使える)
Nginxは2004年にリリースされて以来、企業や個人ユーザーの間で急速に普及しました。その理由は、設定がシンプルでありながら柔軟性が高く、高速な処理能力を持つことにあります。また、モジュール構成により、プロキシ機能やキャッシュ機能などを容易に追加できます。
インストール手順
確認した環境
Ubuntu 22.04.3 LTS (Jammy Jellyfish)
パッケージ更新
nginxをインストールする前に、aptでパッケージを更新します。
sudo apt updatenginxパッケージ確認
nginxパッケージが存在することを確認します。
sudo apt list nginx実行結果例
Listing... Donenginx/jammy-updates,now 1.18.0-6ubuntu14.4 amd64nginxインストール
aptでnginxをインストールします。
sudo apt install -y nginxnginxパッケージ確認
sudo apt list nginx実行結果例
末尾に[installed]と表示されていることをご確認ください。
Listing... Donenginx/jammy-updates,now 1.18.0-6ubuntu14.4 amd64 [installed]nginxを起動する
systemctlでnginxのサービスを起動します。
sudo systemctl start nginxnginxステータス確認
sudo systemctl status nginx以下のようにactive (running)と表示されればOKです。
…Active: active (running) since Sat 2024-08-10 23:01:44 UTC; 4 days ago…nginx接続確認
http://localhost/にアクセスできることを確認しました。

nginx起動・停止手順
nginxの起動や停止、ステータス確認を行う場合は、以下コマンドを実行します。
nginx起動
sudo systemctl start nginxnginx停止
sudo systemctl stop nginxnginx再起動
sudo systemctl restart nginxnginxリロード
sudo systemctl reload nginxnginxステータス確認
sudo systemctl status nginxrestartとreloadの違い
restart と reload はどちらもNginxの設定を適用するためのコマンドですが、挙動が異なります。
- restart(再起動): Nginxプロセスを完全に停止し、新しく起動し直します。これにより、すべての接続が切断され、ダウンタイムが発生する可能性があります。
- reload(設定の再読み込み): Nginxのプロセスを停止せずに、新しい設定ファイルを適用します。すでに確立された接続は維持されるため、ダウンタイムなしで設定変更を適用できます。
nginxとApacheの違い
nginxとApacheの違いは以下の通りです。
| 項目 | nginx | Apache |
|---|---|---|
| 静的/動的 | 静的コンテンツ処理が得意 | 動的コンテンツ処理が得意 |
| 規模 | 大規模向き | 小中規模向き |
| 並列処理 | 得意 | 苦手 |
nginxは、並列処理の際にメモリ使用量が少ないWebサーバーソフトで、同時接続数が多い大規模システムに向いています。
以上で本記事の解説を終わります。
よいITライフを!