質問: マイPCでJava EE7の勉強をしているのですが外部に公開する場合はどのようにする必要があるのでしょうか? 開発環境 ・Java8 ・NetBeans8.1 ・Glassfish4 私自身の思いついたこととしては 1.Javaをインストール 2.Glassfishをインストール 3.Glassfishにローカル環境で作成したwarファイルをアップロード 4.apacheなどのサーバでプロキシ設定する でいいのかな?と思っています。 php等の場合はapacheなどを入れてphpソースを置けばなんとか動く形になりますがJavaの場合は勝手がわかりません。 ご教授お願いします
回答: 基本的にそれで良いと思います。 もっと言ってしまうと、 Javaアプリケーションサーバー(OSS系で言うとGlassfish, Wildfly, Tomcatなど)を どれでも良いから立てて、アプリケーションをデプロイし、そのポートをオープンしてしまえば、 単に公開できるかどうかという意味ではこれだけでOKで、Apacheさえ不要です。 上記に加えて、Apacheの80番ポートだけ公開するには、プロキシー設定あるいはAJP接続で Apacheとアプリケーションサーバーを接続すればOKです。 もちろんセキュリティー上ポートの解放は制限した方が良いです。 80番に制限しても、外部に公開すると不正なリクエストがバンバン飛んできますので、 その辺の対策をお忘れなく。 Javaに限ったことではないですけどね。 ... あとはPaaSを使って公開する手もありますね。 AzureとかGAEとかHerokuとか。 (この辺はそれほど詳しく知りませんが)