luni, 9 martie 2009

Configurare Apache2 si Tomcat 6 prin mod_proxy

Această variantă de conectare a celor două servere este una extrem de utilă întrucât folosește doar componente standard fără să fie nevoie să instalați mod_jk. De asemenea, puteți folosi url_rewriting din apache. Acest articol va prezenta in câțiva pași simpli modul în care se poate realiza acest lucru.

1. Configurăm un virtual host în apache

ServerAdmin admin@domeniumeu.ro
ServerName www.domeniumeu.ro
DocumentRoot /calea/catre/site

        
           ProxyRequests off
           ProxyPass / http://server:8081/domeniumeu.ro/
           ProxyPassReverse / http://server:8081/domeniumeu.ro/        

În principiu, în acest moment trebuie doar să restartați serverul de apache și totul este ok. Remarcați faptul că apare portul 8081 în loc de 8080. Acest lucru este datorat faptului că se activează un listener de tomcat pe acel port. Acest lucru este descris în pasul următor al tutorialului. Pe scurt, ceea ce am făcut în acest pas a fost să indicăm serverului web apache să trimită toate requesturile pentru domeniul www.domeniumeu.ro către tomcat.

2. Configurăm un listener în tomcat

      proxyName="www.domeniumeu.ro" 
      proxyPort="80" />

Această configurare se află în secțiunea de din cadrul fișierului $CATALINA_HOME/conf/server.xml. În acest moment tot ce aveți de făcut este să restartați server-ul de tomcat și să accesați din browser: www.domeniumeu.ro. După cum se poate observa, este mult mai ușor să configurați apache 2 + tomcat cu mod_proxy decât prin mod_jk. Singura problema ar fi că prin această metodă se deschid mai multe porturi(câte un port pentru fiecare site găzduit). Această problemă se rezolvă relativ simplu, prin blocare portului din firewall. Este recomandat să procedăm așa întrucât apache-ul va putea să acceseze tomcat-ul întrucât va trimite  un request local.

Sper că acest articol vi se pare interesant,
Coșniță Radu Viorel!