DiscourseをDigitalOceanのDropletで提供している際に、奇妙な混合コンテンツ関連のエラーが発生しています:
SSL部分はDigitalOceanおよびCloudflareが処理しているため、Discourse自体やnginxベースのリバースプロキシでの設定は行われていません。nginxは単に受信リクエストをDiscourseを実行しているDockerコンテナへ転送しています:
server {
listen 80; listen [::]:80;
server_name mysite.org;
location / {
proxy_pass http://unix:/var/discourse/shared/standalone/nginx.http.sock:;
proxy_set_header Host $http_host;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
}
}
すべてのアセットはHTTPS経由で正しく読み込まれているようですが、この1つのファイルだけが例外です。アプリにアクセスし、Postgresデータベースを検索したところ、問題となっているのは/images/discours.pngというファイルであることが分かりました。この画像の読み込みを完全に回避しようと、このファイルを削除し、Postgresデータベース内の関連する参照もすべて削除しましたが、もちろんDiscourseはアプリを再構築する際に再度この画像を追加してしまいます(少なくとも、私はそう推測しています)。
何かアドバイスがあれば幸いです。
