【Ubuntu】Nginxをインストールする方法(特徴と利用用途)

時計 2021.11.23 / 時計

【Ubuntu】Nginxをインストールする方法(特徴と利用用途)

本記事ではUbuntuにWebサーバーであるNginxインストールする方法について解説していきます。

Ubuntu(ウブントゥ)とはLinux系OSの一つで、オープンソースのLinuxディストリビューションです。
Nginxは近年シェアが凄まじいスピードで拡大しているWebサーバーソフトウェアです。

UbuntuでWebアプリケーションを作成する際に、WebサーバーとしてNginxが選ばれることが近年とても多いです。

私の場合

私がDjangoでWebアプリケーションを作成する際は、OSにUbuntu、WebサーバーにNginx、アプリケーションサーバーにuWSGIを利用します

本記事ではRaspberry PiにインストールしたUbuntuにNginxをインストールしていきます。

Nginx(エンジンエックス)

Nginxとは

NginxとはOSS(Open Source Software)のWebサーバー用ソフトウェアです。

WebサーバーソフトウェアではApache(正式名称:Apache HTTP Server)が非常に有名ですが、最近ではNginxの利用者が増加しています。

IT用語の確認

Webサーバーソフトウェアとはミドルウェアの一つです。HTTPリクエストを受け取り、それに沿ったHTTPレスポンスを返すプログラムです

WebサーバーのシェアではApacheに次いで2位であり、Nginxについての情報もネット上に増えてきた印象です。

Webサーバー界隈では最速のWebサーバーとして名高いです。

Nginxの特徴

Nginxの特徴としては次の通りです。

  1. 処理スピードが高速
  2. 大量の処理が可能(並列処理)
  3. 機能が豊富
  4. メモリの消費が少ない

NginxとApacheを比べる

Nginxの処理速度はApacheと比べても早いです。開発の理念として「最速のWebサーバーを作る」というのがあったからですね。Apacheは重たい処理も自分で行いますが、Nginxは重たい処理を自分で行わずに他に割り振ります。そのため動作が遅くなることがなく、早い速度を維持できるのです。

またNginxは余計な機能を省き、大量の処理(リクエスト)をすることにも特化しています。余計な機能を付けていないため、メモリの消費も抑えています。Apacheはいいことでもありますが、最初から多くの機能が付いているためNginxと比べるとメモリ消費が大きいです。

まとめると、Nginxは高速であり、高負荷に強く、機能が豊富ということです。

Nginxの利用用途

Nginxを使って次の機能を利用することが多いです。

  • HTTPサーバー
  • メールプロキシサーバー(IMAP、POP3、SMTP)
  • TCP/UDPプロキシサーバー
  • ロードバランシング
  • HTTPキャッシュ
  • メディアストリーミング

Nginx:インストール

Nginxをインストールする前の準備

ここでは以下の環境にNginxをインストールしていきます。

  • 機器:ラズベリーパイ
  • OS:Ubuntu 20.04.3 LTS

ラズベリーパイにUbuntuをインストールする方法については以下記事をご参照ください。

上記記事で紹介している初期設定も終わっていることを想定して解説していきます。

Nginxをインストールする方法

UbuntuにNginxをインストールする方法は次の2種類あります。

  1. Ubuntuが配布しているNginxをインストール
  2. Nginxが配布しているNginxをインストール

ここではUbuntuが配布しているNginxをaptコマンドでインストールしていきます。

まずは次のようにaptコマンドを実行してNginxをインストールします。

$ sudo apt update
$ sudo apt install nginx

Nginxのインストールはすぐに終わります。

インストールが完了したらsystemctlコマンドでNginxを起動します。

$ sudo systemctl start nginx

systemctlコマンドについて深く理解したい方はぜひ以下記事をご参照ください。

ファイアウォールの設定

UFWファイアウォールが有効な場合、Webブラウザ経由でNginxにアクセスするにはポートを開いておく必要があります。

UFWファイアウォールで利用可能なアプリケーションは以下のコマンドで確認できます。

$ sudo ufw app list

UFWファイアウォールで利用可能なアプリケーションの確認

以下のNginxプロファイルがあるので、必要なものを選び有効にします。

プロファイル 説明
Nginx Full ポート80と443を解放する
Nginx HTTP ポート80を解放する
Nginx HTTPS ポート443を解放する

サーバーがまだ暗号化されていないので、ここではNginx HTTPを許可します。

$ sudo ufw allow 'Nginx HTTP'

Nginxにアクセスする

Nginxにアクセスする前にNginxが起動しているか確認しましょう。

$ systemctl is-active nginx

「active」と表示されれば起動していることを意味します。

次にWebブラウザを起動してhttp://IPアドレス:80にアクセスします。
以下画面が表示されればNginxが問題なく起動しています。

Nginxの画面

Nginxの自動起動設定

Ubuntuが起動または再起動時に自動的にNginxも起動させたい場合は、以下コマンドを実行してNginxの自動起動を有効にします。

$ sudo systemctl enable nginx

まとめ

本記事「【Ubuntu】Nginxをインストールする方法(特徴と利用用途)」はいかがでしたか。

UbuntuにNginxをインストールしてWebサーバーを構築する際の参考にしてください。