
こんにちは、TAKです。
今回は、Djangoで作成したWebアプリケーションを「独自ドメイン」で公開するために必要なファイル設定について紹介していきたいと思います。
Webアプリケーションのデプロイにあたっては、このサイト(英語)を参考にしています。
・サーバーOS:Ubuntu 20.04
・NginxとGunicornを使用
同じような環境の方は参考にしてみてください。
【こんな人に読んで欲しい記事です】
● Djangoで作成したWebアプリケーションを独自ドメインで公開したい方
● Ubuntu/Nginx/Gunicornを使用した環境でWebアプリケーションを開発している方
結論としては、以下2つのファイルを設定していけばOKです。
①:Djangoファイル「settings.py」内の「ALLOWED_HOSTS」を修正
②:サーバー側「/etc/nginx/sites-available/myproject」内の「server_name」を修正
大して難しくないので、1つずつ見ていきましょう。
なお、今回取得した独自ドメインは「mydomain.com」と仮定して進めていきます。
ファイル設定①|ALLOWED_HOSTSの指定
まずは、Djangoプロジェクト内のファイル「settings.py」を修正していきます。
具体的には、ファイル「settings.py」の「ALLOWED_HOSTS」を以下のように指定します。

開発環境ではALLOWED_HOSTS = [] となっていると思うので、本番環境では取得した独自ドメインを設定しておきましょう。
設定ファイルを「開発用」と「本番用」にわける方法は以下記事で紹介しています。
ファイル設定②|server_nameの修正
続いて、サーバー側のファイルを修正していきます。
具体的には「/etc/nginx/sites-available/myproject」のファイルを以下のように修正します。
※myprojectの部分は必要に応じてご自身が付けた名称に読み替えてください。

独自ドメイン設定前は、「server_name」に使用サーバーのIPアドレスを指定しているかと思います。
この部分を上記赤枠のように独自ドメイン「mydomain.com」に変更すれば完了です。
この設定が完了していないと、ブラウザにアクセスした時に以下のような画面が表示されるはずです。

僕も経験したことがありますが、この画面が表示された場合にはファイル設定②が完了しているかどうか見直してみてください。
さいごに
冒頭で紹介した環境でデプロイしている方であれば、今回紹介した2つのファイル設定をするだけで、独自ドメインでのブラウザ表示が可能になります。
僕の場合は、個人開発レベルでWebアプリケーションを作っているので、サーバーとしてはお手頃なVPS(Vultr)を使用しています。
独自ドメインをVultrで使えるようにしたい場合には、以下記事も参考にしてみてください。
では今回はこのへんで。