開発環境には、Tomcatだけ入れてるのがふつうです。
 でも、実行環境には、Apache + Tomcatだったりするのもふつうな話。
 よって、開発している間は、コンテキスト配下のディレクトリに画像やスタイルシートのディレクトリを置きたくなります。
 ところが、この状態では実行環境でせっかくApacheを用意していても、Tomcatが画像やスタイルシートを返すことになります。
 静的コンテンツ(画像やスタイルシート)をTomcatが返すと、性能面でかなりの損害です(; ・`д・´)
 かと言って、別のディレクトリに持っていくと、うまく動かなくなることも。。
 そんなときは、Apacheの設定でどうにか逃げ切ることを考えてみましょうw
 これを使えば、ApacheでもTomcatでも同じディレクトリを参照できることになり、ソース管理も簡単になります♪
Apacheのサンプル設定
ApacheからTomcatと連携する際の設定を見直します。
 ふつうは、「このディレクトリならTomcatに連携する」のような形で書きますが、今回は逆です。
 つまり、「このディレクトリならTomcatに連携しない」です。
| 1 2 3 4 5 6 7 8 9 10 11 12 13 | <VirtualHost *:80>         ServerName www.example.com         DocumentRoot /var/www/www.example.com/         <Directory "/var/www/www.example.com/">                 Require all granted         </Directory>         ProxyRequests Off         ProxyPass /favicon.ico !         ProxyPass /css !         ProxyPass /image !         ProxyPass /javascript !         ProxyPass / ajp://localhost:8009/ </VirtualHost> | 
サンプルの解説
「!」をつけると、そのディレクトリは除外されます。
 これを利用して、静的コンテンツを含むディレクトリでは、ApacheがTomcatに連携することなく、直接応答できることになります。
 この例では、ありがちなディレクトリ(スタイルシート、画像、JavaScript)以下がアクセスされた場合、Tomcatに連携をしません。
 また、ブラウザが勝手にアクセスするファビコン(favicon.ico)もついでに抜いてますw
 開発環境で開発をしていたコンテキストパス配下を「/var/www/www.example.com/」にまるっとコピーすればできあがりです♪
 「おなじディレクトリに静的コンテンツが混在してます・・・(TT)」な人は、ファイル名を直接指定しましょう♪













