Django アプリを Gunicorn で動作させた後、Nginx をリバースプロキシとして設定し、セキュアで高速な本番環境を構築します。
Gunicorn 単体ではリクエストを直接処理できますが、大量のトラフィックや SSL 対応などを考えると Nginx をリバースプロキシとして導入するのが一般的です。
※ リバースプロキシ(Reverse Proxy) とは、クライアント(ユーザーのブラウザなど)からのリクエストを受け取り、適切なバックエンドサーバー(例えば Gunicorn や Django アプリ)に転送し、そのレスポンスをクライアントに返す役割を持つサーバーのことです。
✅ Nginx を導入するメリット
runserver
では処理しない)VPS に Nginx をインストールします。
BASHapt update && apt install -y nginx
インストール後、Nginx の動作確認。
BASHsystemctl status nginx
✅ 出力例
● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled) Active: active (running) since ...
Gunicorn の前段に Nginx をリバースプロキシとして設定します。
BASHnano /etc/nginx/sites-available/myproject
以下の内容を記述。
NGINXserver { listen 80; server_name <your-domain-or-ip>; location / { proxy_pass http://unix:/home/myuser/django_project/gunicorn.sock; 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 /static/ { alias /home/myuser/django_project/static/; } location /media/ { alias /home/myuser/django_project/media/; } }
BASHln -s /etc/nginx/sites-available/myproject /etc/nginx/sites-enabled/
設定が正しいかテスト。
BASHnginx -t
✅ 成功例
nginx: configuration file /etc/nginx/nginx.conf test is successful
BASHsystemctl restart nginx
Nginx の HTTP/HTTPS 通信を許可します。
BASHufw allow 'Nginx Full' ufw reload
ブラウザで http://<VPSのIP>
にアクセスし、Django のページが表示されることを確認。
✅ 成功例:Nginx 経由で Django アプリが表示される。
Nginx をリバースプロキシとして設定することで、Gunicorn と連携し、
セキュアでパフォーマンスの高い Django アプリの運用環境を構築できます。
回 | タイトル | リンク |
---|---|---|
第 1 回 | Django × VPS デプロイ入門 - はじめに | 詳 細 |
第 2 回 | VPSの契約から初期設定まで | 詳 細 |
第 3 回 | Python & Django 環境をセットアップ | 詳 細 |
第 4 回 | Gunicorn による Django アプリの運用 | 詳 細 |
第 5 回 | Nginx をリバースプロキシとして設定 | この記事 |
第 6 回 | Let's Encrypt を使った HTTPS の設定 | 詳 細 |
第 7 回 | ファイアウォールとセキュリティ設定 | 詳 細 |
第 8 回 | Django アプリの自動起動の設定(systemd) | 詳 細 |
第 9 回 | デプロイの自動化(Fabric を活用) | 詳 細 |
第 10 回 | デプロイのベストプラクティス | 詳 細 |
当サイトの情報は、一般的な参考情報として提供しております。
正確な情報の掲載に努めておりますが、その内容の正確性・完全性・最新性を保証するものではありません。
記事の内容をご利用の際は、ご自身の責任において判断し、必要に応じて専門家にご相談ください。
当サイトの情報の利用により生じたいかなる損害についても、一切の責任を負いかねますのでご了承ください。
※ 本ページでは、著作権法に基づき、適正な引用の範囲内でコンテンツを紹介しています。
オリジナルの情報は発信元をご確認ください。
もし問題がありましたら、こちら からお問い合わせください。