2010-06-21 5 views
0

J'ai plusieurs serveurs Tomcat. Dans chaque tomcat, je charge toutes les images. Je veux déplacer les images de Tomcat vers Apache et accéder aux images à partir de là.Configuration pour obtenir les images de l'apache

Ma question est: existe-t-il une configuration pour obtenir les images dans une application web Java à partir d'Apache au lieu de Tomcat?

+1

Vous manquez un fait crucial: les images ne sont pas demandées par le serveur, mais par le client. La requête se passe par URL HTTP. Vous avez juste à modifier l'URL de l'image. – BalusC

Répondre

1

Je ne pense pas - les images sont montrées en résolvant leur URL, et dans la plupart des cas il est relatif à la page courante.

Mais vous pouvez utiliser mod_proxy (ou mod_jk) pour utiliser tous vos Tomcats via Apache.

1

Masquer vos serveurs tomcat derrière un serveur apache et vous pouvez faire quelque chose comme ceci:

<VirtualHost www.example.com:80> 
    ServerName  www.example.com 
    DocumentRoot /var/www/html 
    ProxyPass  /img ! 
    ProxyPass  /  ajp://localhost:1234/ 
</VirtualHost> 

Apache servira/img/var/www/html/img et d'autres demandes seront envoyées à tomcat . Cette configuration nécessite que le module apache mod_proxy_ajp soit actif. Tomcat doit écouter les demandes AJP sur le port donné, utilisez:

<Connector port="1234" protocol="AJP/1.3" redirectPort="8443" address="127.0.0.1" URIEncoding="UTF-8" /> 

et configurer tomcat pour servir www.example.com ou l'hôte virtuel par défaut.

<Host 
    name="www.example.com" 
    appBase="/path/to/tomcat/apps/www.example.com" 
    unpackWARs="true" 
    autoDeploy="true" 
    xmlValidation="false" 
    xmlNamespaceAware="false" 
/> 

ou

<Host 
    name="localhost" 
    appBase="/path/to/tomcat/apps/www.example.com" 
    unpackWARs="true" 
    autoDeploy="true" 
    xmlValidation="false" 
    xmlNamespaceAware="false" 
/> 

Déployez votre webapp à /path/to/tomcat/apps/www.example.com/ comme ROOT.war, cela devrait être suffisant pour avoir toute l'installation et fonctionnement.

Questions connexes