Nginxの設定入門|Webサーバー基礎からリバースプロキシ設定まで解説

現場実践|Webサーバー設定
Nginxの設定入門
Webサーバー基礎からリバースプロキシまで
ApacheとともにLinux上で最も使われるWebサーバー「Nginx(エンジンエックス)」の設定を、インフラエンジニアが実務で使うレベルまで解説します。
💡 Nginxは軽量・高パフォーマンスのWebサーバー+リバースプロキシ。クラウド上のWebシステムでは必須の技術です。設定ファイルの構造を理解することで応用が広がります。
1. Nginxとは
まず、Nginx(エンジンエックス)はC10K問題(同時1万接続)を解決するために設計された非同期イベント駆動型のWebサーバーです。静的ファイルの配信・リバースプロキシ・ロードバランサーとして使われます。Apacheより少ないメモリで高い同時接続数を処理できます。
2. インストール(CentOS/RHEL系)
# インストール
sudo yum install -y nginx
# 起動・自動起動設定
sudo systemctl start nginx
sudo systemctl enable nginx
# 動作確認
sudo systemctl status nginx3. 設定ファイルの構造
| ファイル・ディレクトリ | 役割 |
|---|---|
/etc/nginx/nginx.conf | メイン設定ファイル。workerプロセス数・グローバル設定を記述 |
/etc/nginx/conf.d/*.conf | サイト別の設定ファイルを配置する。nginx.confからincludeされる |
/var/log/nginx/access.log | アクセスログ |
/var/log/nginx/error.log | エラーログ |
4. バーチャルホスト設定の基本
server {
listen 80;
server_name example.com www.example.com;
root /var/www/html;
index index.html;
location / {
try_files $uri $uri/ =404;
}
# アクセスログ・エラーログの指定
access_log /var/log/nginx/example.access.log;
error_log /var/log/nginx/example.error.log;
}5. リバースプロキシ設定
server {
listen 80;
server_name api.example.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}このようにlocation内でproxy_passを指定することで、Nginxがリクエストを受け取ってバックエンド(ここではlocalhost:3000)に転送するリバースプロキシとして動作します。
📌 この記事のポイント
- Nginxは軽量・高パフォーマンスのWebサーバー+リバースプロキシ
- 設定ファイルは/etc/nginx/conf.d/配下に追加することでモジュール管理できる
- proxy_passでリバースプロキシとしてバックエンドに転送できる
キャリアの疑問、一緒に解決しませんか?
Route Bloomでは、インフラ系ITエンジニアを目指す方への個別サポートを行っています。2026年7月からフリーランス講師として本格始動予定です。
ABOUT ME




