Tomcat: Różnice pomiędzy wersjami

Linia 35: Linia 35:
  
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
apache-tomcat-8.5/bin/startup.sh
+
apache-tomcat-8.5.57/bin/startup.sh
 
</syntaxhighlight>
 
</syntaxhighlight>
  

Wersja z 21:19, 8 sie 2020

Serwer Tomcat

Należy pobrać ze strony projektu https://tomcat.apache.org/ wybraną wersję Tomcat oraz odblokować Binexec.

Przykładowo pobranie wersji 8.5.57 korzystając z adresu jednego z linków na stronie.

fetch https://ftp.ps.pl/pub/apache/tomcat/tomcat-8/v8.5.57/bin/apache-tomcat-8.5.57.tar.gz

Po czym rozpakować plik

tar zxvf apache-tomcat-8.5.57.tar.gz

Należy zarezerwować 2 porty TCP.

Później w pliku konfiguracyjnym serwera Tomcat apache-tomcat-8.5.57/conf/server.xml należy zmienić numery portów (poprzedzone port=: 8080 oraz 8005) na numery wcześniej zarezerwowanych portów. Dwa pierwsze numery muszą być takie same.

<Connector port="8080" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" />
<Connector executor="tomcatThreadPool" 
           port="8080" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" />
<Server port="8005" shutdown="SHUTDOWN">

Resztę konfiguracji serwera Tomcat należy ustawić samodzielnie. Po zmianie niezbędnych ustawień trzeba wyeksportować zmienną środowiskową export CATALINA_BASE="/home/"login"/apache-tomcat-8.5.57/". W miejscu "login" należy podać login swojego konta hotingowego. Serwer Tomcat w zależności od wybranej wersji należy uruchomić poleceniem:

apache-tomcat-8.5.57/bin/startup.sh

Aby serwer był dostępny na porcie 80 należy utworzyć domenę typu proxy z adresem docelowym localhost i portem docelowym takim samym jaki został wpisany w Connector port.

Aby ograniczyć wykorzystanie RAMu przez Tomcat należy utworzyć plik setenv.sh w /usr/home/login/apache-tomcat-8.5.57/bin/, a w nim sprecyzować CATALINA_OPTS, na przykład:

CATALINA_OPTS='-Xms512m -Xmx1024m'

W miejscu "login" należy podać login swojego konta hotingowego

Wiele instancji

Tomcat obsługuje serwowanie wielu aplikacji webowych na jednym serwerze. Aby dodać nową należy zarezerwować dodatkowy port TCP oraz trzeba dopisać do pliku /usr/home/login/apache-tomcat-8.5.57/conf/server.xml konfigurację nowej strony:

<Service name="webapp">
  <Connector port="35160" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443"/>
  <Engine name="Catalina" defaultHost="localhost">
  <Host name="localhost"  appBase="webapp2" unpackWARs="true" autoDeploy="true">
    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
          prefix="webapp2_access_log" suffix=".txt"
          pattern="%h %l %u %t &quot;%r&quot; %s %b" />
    </Host>
  </Engine>
</Service>

Automatyczne uruchamianie aplikacji Tomcat po ponownym uruchomieniu serwera

Aby Tomcat startował automatycznie po ponownym uruchomieniu serwera należy utworzyć odpowiednie zadanie w Cron. W formularzu w panelu konta hostingowego po przejściu do Cron należy wybrać uruchamianie po reboot. W przypadku dodawania zadania poprzez SSH utworzyć wpis z @reboot.