川獺の外部記憶

なんでも残しておく闇鍋みたいな備忘録

django channelsとFORCE_SCRIPT_NAMEで事故した話

既存のdjangoアプリケーションにdjango channelsを追加した際、それまでに解決できていたURLで 404 not found が出てにっちもさっちも行かなくなりました。

私の場合、原因は settings.pyFORCE_SCRIPT_NAME = "/" を定義していたことでした。 FORCE_SCRIPT_NAME = ""に修正することで動きました。

多分channels無しの場合でも「FORCE_SCRIPT_NAMEサーバルートで動かす場合は空文字列を指定すべき」というのが正解だと思います。(django標準だと厚意で動いていただけな印象)

ググっても同様の状況は見つからなく、究明までに相当苦労しました。

動的生成してたので自分で実装しときながら把握できてなかったのは反省点。

以上