編集済み 5 数か月前 によって ExtremeHow 編集チーム
Nginxウブントゥサーバーリナックスウェブサーバーインストール設定オペレーティングシステムシステムセットアップ
翻訳が更新されました 5 数か月前
Ubuntu Server に Nginx をインストールし、設定する方法についてのガイドへようこそ。この詳細な記事では、インストールから設定に至るまでの各ステップを詳しく説明し、さまざまなモジュールや設定をニーズに合わせて調整する方法をカバーします。Nginx は、その高いパフォーマンス、安定性、豊富な機能セット、シンプルな構成、低リソース消費で知られており、Web サーバーで人気のある選択肢です。あなたの Ubuntu システムで Nginx を動かす手順を見ていきましょう。
Nginx(「エンジンエックス」と発音)は、高性能の HTTP サーバーおよびリバースプロキシであり、IMAP/POP3 プロキシサーバーでもあります。多くの同時接続を処理するように開発されているため、静的コンテンツを効率的に提供し、負荷分散機能を提供します。Nginx はオープンソースソフトウェアであるため、自由に使用、変更、および配布できます。
Nginx をインストールする前に、Ubuntu が実行中のサーバーが必要です。このガイドは次のことを前提としています:
サーバーが最新のソフトウェアパッケージで更新されていることを確認してください。これには次のコマンドを実行します:sudo apt update && sudo apt upgrade
。
Nginx をインストールするには、パッケージマネージャーが最新でなければなりません。Ubuntu のデフォルトのパッケージマネージャーである apt
を使用します。次のステップに従ってください:
sudo apt update
sudo apt install nginx
最初のコマンドはパッケージリストを更新します。2 番目のコマンドは Nginx をインストールします。インストール後、Nginx は自動的に開始されます。Nginx が稼働していることを確認するには、次のコマンドを使用できます:systemctl status nginx
。サービスがアクティブで実行中の場合、そのように示す出力が表示されるはずです。
デフォルトでは、Nginx はファイアウォール設定ツールである ufw
に登録されます。ufw
を使用すると、開いている HTTP および HTTPS ポートを管理できます。実行します:
sudo ufw app list
そこに Nginx プロファイルが表示されるはずです。Nginx Full
の許可を次のようにします:
sudo ufw allow 'Nginx Full'
次に、ファイアウォールの状態を確認して変更を確認します:sudo ufw status
これで必要なポートでトラフィックが許可されていることを確認します。
Nginx が稼働し、ファイアウォールが調整されたので、Web サーバーのデフォルトページを表示できます。Web ブラウザーを開き、サーバーのパブリック IP アドレスにアクセスします。Nginx が正しく設定されている場合、「Welcome to Nginx!」ページが表示されるはずです。サーバーのパブリックIPを確認するには、次を使用します:
curl -4 icanhazip.com
Nginx がインストールされているディレクトリ構造を理解することは重要です。主に /etc/nginx
にあります。主なディレクトリとファイルは次のとおりです:
nginx.conf
: メインの設定ファイル。sites-available
: すべてのサーバーブロック設定が格納されています。sites-enabled
: sites-available
内のファイルへのシンボリックリンクを含むディレクトリ。構成の変更は一般的に nginx.conf
に直接、または sites-available
に新しいファイルを作成して行うべきです。
nginx.conf
ファイルは Nginx のメインの設定ファイルです。簡単なタスクは直接編集することができますが、ホストされるサイトに関連する特定の変更にはサーバーブロックファイルを使用します。example.com
というドメインの新しいサーバーブロックファイルを作成しましょう。/etc/nginx/sites-available/
内で:
sudo nano /etc/nginx/sites-available/example.com
次の設定を追加します:
server {
listen 80;
server_name example.com www.example.com;
location / {
try_files $uri $uri/ =404;
}
}
このファイルを有効にするには、sites-enabled
ディレクトリにシンボリックリンクを作成します:
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
正しく構成されているかを確認するには:
sudo nginx -t
成功した場合、Nginx をリロードします:
sudo systemctl reload nginx
この例では、デフォルトの Nginx ルートである /var/www/html
内のディレクトリから静的ファイルを提供しています。
サーバーブロックにより、1 つのサーバーで複数のドメインをホストできます。各ドメインの設定ファイルは sites-available
にあり、シンボリックリンクは sites-enabled
にあります。サーバーブロックの例:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com/html;
index index.html index.htm index.nginx-debian.html;
location / {
try_files $uri $uri/ =404;
}
}
ディレクトリ構造を作成します:
sudo mkdir -p /var/www/example.com/html
権限を指定してサンプル HTML ページを作成します:
sudo chown -R $USER:$USER /var/www/example.com/html
sudo chmod -R 755 /var/www/example.com
echo '<h1>Hello World!</h1>' > /var/www/example.com/html/index.html
シンボリックリンクを作成して構成をテストし、次に Nginx をリロードすることを忘れないでください。
サーバーとの間のトラフィックを安全にするために、SSL/TLS の実装が重要です。Let's Encrypt は無料の SSL 証明書を提供します。まず、Certbot(Let's Encrypt のクライアント)をインストールします:
sudo apt install certbot python3-certbot-nginx
Certbot は Nginx 用の SSL を自動的に設定できます。実行します:
sudo certbot --nginx -d example.com -d www.example.com
プロセス中に、メールアドレスを提供し、サービス利用規約に同意する必要があります。Certbot は、コンテンツを HTTPS 経由で配信するように Nginx の構成を変更します。
Let's Encrypt の証明書は90日ごとに期限が切れます。cron ジョブを設定して証明書を自動的に更新します。crontab を開きます:
sudo crontab -e
追加します:
0 3 * * * /usr/bin/certbot renew --quiet
これにより、更新コマンドが毎日午前 3 時に実行されます。
トラフィックの多いサイトでは、パフォーマンスチューニングが重要です。いくつかの調整戦略:
/etc/nginx/nginx.conf
に次のように設定して増やします:worker_processes auto;
および worker_connections 1024;
。gzip on;
Nginx のパフォーマンスを監視するために New Relic や Datadog などのツールの使用を検討してください。
おめでとうございます、Ubuntu に Nginx をインストールして設定しました! 複数のドメインをサービスし、SSL でサイトを保護し、より良いパフォーマンスのために設定を最適化する方法を学びました。Nginx のオプションやモジュールは非常に豊富で、そのドキュメントをさらに探索すると、多くの高度で興味深い機能が得られるかもしれません。実験を続け、高度に最適化された Web サーバーを管理することができます。
記事の内容に誤りがある場合, あなたは