django-sslserverを入れた

最近のiOSアプリを開発していると、sslが効いてないサイトにアクセスするには別途、設定を加えなければならない。やってないからわからんけど、その設定を消し忘れてたりして、諸々を垂れ流したら大変なので、代替案を探した。その結果、djangoを使っていたので、django-sslserverを使うことにした。

環境

インストール

そのまま公式を見ればいいと思う

pip install django-sslserver

settings.pyに追記する

INSTALLED_APPS = [
    ...
    'sslserver'
]

migrate等はする必要はない。

manage.py runsslserver

デフォだと127.0.0.1:8000だが、これを初めて開くときは、信頼されていないので、safariを開くと、警告がでる。

証明書周り

runsslserverをすると、証明書の場所が表示されると思う。
openで開いて、証明書をダブルクリックすると、キーチェーンアクセスが開かれるので、左端のシステムをクリックして、証明書リストにfinderからdevelop.crtをドラッグする。ロックがかかっている場合は解除しておく。
そうすると、信頼されていない証明書が追加される。名前はlocalhost。それをダブルクリックして、別ウィンドウを開きつつ、信頼のところをクリックして、拡張する。「この証明書を信頼するとき」のリストを常に信頼するに変えると他の部分も自動的に変わるので、保存する。

またrunsslserverして、httpsでアクセスすると入れる。