Ubuntu 18.04にNginxをインストールする方法[クイックスタート]

前書き

Nginxは、世界で最も人気のあるWebサーバーの1つであり、インターネット上で最大かつ最もトラフィックの多いサイトのホストを担当しています。 ほとんどの場合、Apacheよりもリソースにやさしく、Webサーバーまたはリバースプロキシとして使用できます。

このガイドでは、Ubuntu 18.04サーバーにNginxをインストールする方法について説明します。 このチュートリアルのより詳細なバージョンについては、https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-18-04 [Ubuntu 18.04にNginxをインストールする方法]を参照してください。 。

前提条件

このガイドを始める前に、次のものが必要です。

アカウントを使用できるようになったら、非rootユーザーとしてログインして開始します。

ステップ1 – Nginxのインストール

NginxはUbuntuのデフォルトリポジトリで利用できるため、 `+ apt +`パッケージングシステムを使用してインストールできます。

ローカルパッケージインデックスを更新します。

sudo apt update

Nginxをインストールします。

sudo apt install nginx

ステップ2 –ファイアウォールの調整

前提条件のサーバーセットアップチュートリアルに従った場合、UFWファイアウォールが有効になっています。 次のコマンドを使用して、利用可能な `+ ufw +`アプリケーションプロファイルを確認します。

sudo ufw app list
OutputAvailable applications:
 Nginx Full
 Nginx HTTP
 Nginx HTTPS
 OpenSSH

設定したトラフィックを引き続き許可し、ポート「80」でのトラフィックを許可する最も制限の厳しいプロファイルを有効にしましょう。

sudo ufw allow 'Nginx HTTP'

変更を確認します。

sudo ufw status
OutputStatus: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
Nginx HTTP                 ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
Nginx HTTP (v6)            ALLOW       Anywhere (v6)

ステップ3 – Webサーバーの確認

次のように入力して、 + systemd + initシステムをチェックし、サービスが実行されていることを確認します。

systemctl status nginx
Output● nginx.service - A high performance web server and a reverse proxy server
  Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
  Active:  since Fri 2018-04-20 16:08:19 UTC; 3 days ago
    Docs: man:nginx(8)
Main PID: 2369 (nginx)
   Tasks: 2 (limit: 1153)
  CGroup: /system.slice/nginx.service
          ├─2369 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
          └─2380 nginx: worker process

デフォルトのNginxランディングページにアクセスして、ソフトウェアがIPアドレスを介して適切に実行されていることを確認します。

http://

デフォルトのNginxランディングページが表示されます。

image:https://assets.digitalocean.com/articles/nginx_1604/default_page.png [Nginxデフォルトページ]

Nginx Webサーバーを使用する場合、server blocks(Apacheの仮想ホストに似ています)を使用して、構成の詳細をカプセル化し、単一のサーバーから複数のドメインをホストできます。 * example.com というドメインを設定しますが、これを*自分のドメイン名に置き換える必要があります。 DigitalOceanを使用したドメイン名の設定の詳細については、https://www.digitalocean.com/community/tutorials/an-introduction-to-digitalocean-dns [DigitalOcean DNSの紹介]をご覧ください。

++-'のディレクトリを作成し、 + -p + `フラグを使用して必要な親ディレクトリを作成します。

sudo mkdir -p /var/www//html

ディレクトリの所有権を割り当てます。

sudo chown -R $USER:$USER /var/www//html

`+ umask +`の値を変更していない場合、Webルートの権限は正しいはずですが、次のように入力して確認できます。

sudo chmod -R 755 /var/www/

`+ nano `またはお気に入りのエディターを使用して、サンプルの ` index.html`ページを作成します。

nano /var/www//html/index.html

内部に、次のサンプルHTMLを追加します。

/var/www/example.com/html/index.html

<html>
   <head>
       <title>Welcome to !</title>
   </head>
   <body>
       <h1>Success!  The  server block is working!</h1>
   </body>
</html>

完了したら、ファイルを保存して閉じます。

`+ / etc / nginx / sites-available / +`で新しいサーバーブロックを作成します。

sudo nano /etc/nginx/sites-available/

新しいディレクトリとドメイン名に合わせて更新された次の構成ブロックに貼り付けます。

/etc/nginx/sites-available/example.com

server {
       listen 80;
       listen [::]:80;

       root /var/www//html;
       index index.html index.htm index.nginx-debian.html;

       server_name  www.;

       location / {
               try_files $uri $uri/ =404;
       }
}

完了したら、ファイルを保存して閉じます。

ファイルから `+ sites-enabled +`ディレクトリへのリンクを作成して、ファイルを有効にします。

sudo ln -s /etc/nginx/sites-available/ /etc/nginx/sites-enabled/

2つのサーバーブロックが有効になり、 `+ listen `および ` server_name +`ディレクティブに基づいてリクエストに応答するように設定されました。

  • + example.com +: `+ example.com `および ` www.example.com +`のリクエストに応答します。

  • + default +:他の2つのブロックと一致しないポート `+ 80 +`のリクエストに応答します。

サーバー名を追加することで発生する可能性のあるハッシュバケットメモリの問題を回避するには、 `+ / etc / nginx / nginx.conf +`ファイルの単一の値を調整する必要があります。 ファイルを開きます。

sudo nano /etc/nginx/nginx.conf

`+ server_names_hash_bucket_size `ディレクティブを見つけ、 `#+`シンボルを削除して行のコメントを外します:

/etc/nginx/nginx.conf

...
http {
   ...
   server_names_hash_bucket_size 64;
   ...
}
...

構文エラーをテストします。

sudo nginx -t

Nginxを再起動して、変更を有効にします。

sudo systemctl restart nginx

これで、Nginxがドメイン名を提供しているはずです。 これをテストするには、「+ http:// +」に移動します。次のように表示されます。

image:https://assets.digitalocean.com/articles/nginx_server_block_1404/first_block.png [Nginx最初のサーバーブロック]

結論

Webサーバーがインストールされたので、提供するコンテンツの種類と、より豊かなエクスペリエンスを作成するために使用するテクノロジに関する多くのオプションがあります。

より完全なアプリケーションスタックを構築する場合は、https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stackのこの記事をご覧ください。 -ubuntu-18-04 [Ubuntu 18.04でLEMPスタックを構成する方法]。

Related