created: 2025/12/26,
modified: 2026/01/04
今まではPHP & CakePHP、新しいことにも挑戦ということで Python Django React をAWSで構築してみようと思います。2025-26 の年末年始はこれで決まり
AWSはアカウントだけある。
Python
Django
React
12/27 時点で最新版は3.14.2
2000年に2.xが出て、2008年に3.xが出た、後方互換がないっぽい別物。
3.xはだいたい毎年アップデートしている。10月に3.14.0が出て、だいたい毎月マイナーアップデートがあるようだ
Latest News
https://blog.python.org/
Python - Wikipedia
https://ja.wikipedia.org/wiki/Python
12/27 時点で最新版は5.2.9
2年ごとにメジャーアップデート。最後のマイナー版(5だったら5.2)がLTS (long-term support)。
5.2を入れようかな
Django ダウンロードページ
https://www.djangoproject.com/download/
Django - Wikipedia
https://ja.wikipedia.org/wiki/Django
12/27 時点で最新版はv19.2.1
React バージョン
https://ja.react.dev/versions
React - Wikipedia
https://ja.wikipedia.org/wiki/React
Djangoの初期画面が表示されました
このリクエストを最初に受けるのが、Server Block です。
// /etc/nginx/conf.d/django-5.conf
server {
listen 80;
server_name django-5.usual.tools;
...
}
// /etc/nginx/conf.d/django-5.conf
location /static/ {
alias /var/www/django-5/staticfiles/;
}
location /media/ {
alias /var/www/django-5/media/;
}
パスが /static/... のリクエスト
→ nginx は /var/www/django-5/staticfiles/... からファイルを探して、そのまま返す。
/media/... も同様に /var/www/django-5/media/... から返す。
このルートでは Django(Gunicorn)には一切行きません。
「nginx ↔ ブラウザ」で完結します。
// /etc/nginx/conf.d/django-5.conf
location / {
proxy_pass http://127.0.0.1:8001;
...
}
# /etc/systemd/system/gunicorn-django5.service
ExecStart=/var/www/django-5/venv/bin/gunicorn \
--workers 3 \
--bind 127.0.0.1:8001 \
myproject.wsgi:application
ExecStart の設定内容
データの流れ
DjangoフレームワークにおけるHTTPリクエストの処理フロー。WSGIを通じたリクエストの受信から、URLconfによるルーティング、viewでのビジネスロジック実行などDjango内部の動き。PythonのWebアプリケーション開発における基礎知識として、モジュール検索パスやDRFの役割。