Django でカスタムドメインへのアクセスを構成する方法
ドメインにアクセスできるようにするには、以下の手順を実行する必要があります。
- DNSサーバー上でドメイン名をサーバーのIPアドレスに解決する。これは、DNSサーバーの管理画面でAレコードやCNAMEレコードを追加することで実現できる。例として、ドメイン名example.comをサーバーのIPアドレスに解決する。
- Djangoプロジェクトの設定ファイルsettings.pyで、アクセス可能なドメインのリストを許可するようALLOWED_HOSTSを設定します。例:ALLOWED_HOSTSを[‘example.com’]に設定します。
- サーバ上にNginxやApacheなどのWebサーバを構築し、リクエストをDjangoアプリケーションにフォワードさせます。具体的な設定方法は、サーバとWebサーバによって異なります。Nginx設定の例を以下に示します。
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://localhost:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
すべてのexample.comからのリクエストをローカルホスト:8000で実行されているDjangoアプリケーションに転送します。
- Djangoアプリケーションは開発サーバーで動作しますが、サーバーソフトウェア(Gunicorn、uWSGIなど)を使用して動作させることもできます。
上述のステップを完了すると、ドメイン名経由で Django アプリケーションにアクセスできるようになります。例えば、ブラウザに http://example.com と入力することでアプリケーションにアクセスできます。