lion
18
さて、DiscourseにSSLを強制しないのは、haproxyにSSLを処理させたいからです。なぜなら、haproxyのパススルーはGETリクエストをリダイレクトするためにHTTPプロトコルでは機能せず、複数のウェブサイトを処理する必要があるため、haproxyでHTTPプロトコルが必要となり、haproxy側でSSL処理が必要になるからです。二重SSLゲートウェイは避けたいです。
そのため、haproxy(1つのlxc上)は443をリッスンし、8080(SSLなし)にリダイレクトして私のDiscourseコンテナ(lxc)に渡します。
興味深いのは、Discourseフォルダで提供されているnginx-config-sampleがSSLなしでポート80で設定されているため、うまく機能するはずですが、上記の問題が発生していることです。