私は、stage
SBT 内で実行してデプロイした Play アプリケーションを持っており、次に を使用してコマンドラインから実行しtarget/start
ます。その前に Nginx を配置し、サブドメインに基づいて、server
ポート 80 用とポート 443 用の 2 つのブロックがあります。ポート 80 ブロックは、https
ポート 443 のスキームにリダイレクトするだけです。すべてうまくいきます。
要点をまとめると:
http://play.mydomain.com/
にリダイレクトしますhttps://play.mydomain.com/
これはのプロキシですhttp://localhost:9000
しかし、単に にhttp://mydomain.com:9000/
アクセスすると、Play アプリケーションに直接アクセスできます。SSL はありません。また、誰かが SSL にアクセスできないようにする方法もありません。
私は何をすべきか?Nginx を使用してポート 9000 へのアクセスを SSL バージョンの URL にリダイレクトする必要がありますか? ポート 9000 をファイアウォールで保護し、そのポートでのローカル リクエストのみを許可する必要がありますか? (もしそうなら、どうすればいいですか?) 私が考えていない、これに対処する他の方法はありますか?
そして、サーブレット 3.1 仕様がリリースされて、すべてを WAR としてデプロイできるようになるまで、どのくらいかかりますか? :-)