2016-05-20 3 views
0

Spring MVCの結果をApache Tomcatにデプロイすることは明らかです。 Apache Web Server(HTTPD)にデプロイすることは可能ですか? WebにVPSのないプロジェクトを展開する必要があります。Apache MVCプロジェクト(httpd)

+1

warアーカイブをお持ちの場合は、アプリケーションを実行するために* Servlet Container *が必要です。しかし、Tomcatのようなサーブレットコンテナの前にApache Web Serverを置いて、Tomcatにリクエストを送ることができます。スタンドアロンサーブレットコンテナを使用しない場合は、組み込みサーブレットコンテナを使用することもできます。 –

+2

[Apache 2.2へのWARファイルの配備方法]の複製(http://stackoverflow.com/questions/3646821/how-to-deploy-a-war-file-into-apache-2-2) –

答えて

-1

コメントに記載されているように、Springアプリケーションを実行するにはサーブレットコンテナが必要です。通常、あなたはその前にウェブサーバ(apache、nginx)を置くでしょう。 Apacheの場合、実際にはこれを達成する3つの方法があります。

1.使用のmod_proxy

インストールし、Apacheウェブサーバ上のmod_proxyを有効にします。そして、VirtualHostディレクティブでは、あなたの設定に以下を追加し、転送要求を有効にすることができます。

ProxyPass /path-to-your-application "http://host:port/context" 

その他のオプションはここで見つけることができます:Apache mod_proxy documentation

2.使用mod_ajp

もう一つの方法はにありますmod_ajpを使用してください。 AJPはバイナリプロトコルで、mod_proxyを使用するよりもいくつかのパフォーマンス上の利点があります。 mod_ajpを使用するには、ワーカーファイルが必要です。 workerファイルの場所は通常、mod_ajpの設定ファイルで設定されます。 Ubuntuの/ Debianでは、あなたがでこれを見つける:

/etc/apache2/mods-available/jk.conf 

労働者のファイルを通信するために使用されるサーブレットコンテナの設定を含むプロパティファイルです。基本的な例は、次のようになります。

worker.foobar.port=8009 
worker.foobar.type=ajp13 
worker.foobar.host=localhost 

ここで、「foobar」という単語は作業者の名前です。これは後で必要になります。これを設定し、mod_ajpを有効にすると、ホスト設定にJkMountディレクティブを追加する必要があります。これは、次のようになります。

<VirtualHost *:80> 
    # ... 
    JkMount /*  foobar 
    # ... 
</VirtualHost> 

これはあなたの労働者のファイルで構成されたサーブレットコンテナを指摘している「foobarに」という名前の労働者にその仮想ホスト上のすべての着信要求を送信します。

3.使用mod_proxy_ajp

私はmod_proxyをを使用して、AJP設定するための別の方法があることを見てきたこのanwerを書きます。私はこれはとの両方のモジュールを使用するために非常に便利な方法だと思い、これを使用していない

ProxyPass/"ajp://host:port/context" 

自分自身を:これが機能するためには、あなたが持つプロキシを定義することができるのVirtualHostのmod_proxyを必要とし、あなたの中に

をmod_proxy_ajpます簡単な設定方法です。詳細は、mod_proxy_ajp documentationを参照してください。

関連する問題