Tomcat: Różnice pomiędzy wersjami
(Nie pokazano 33 pośrednich wersji utworzonych przez tego samego użytkownika) | |||
Linia 1: | Linia 1: | ||
− | == | + | == Przygotowanie == |
− | + | Pierwszym krokiem jest skopiowanie serwera do swojego katalogu domowego poleceniem: | |
− | |||
− | |||
− | |||
+ | Tomcat 8.5 | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | cp -r /usr/local/apache-tomcat-8.5 ~/apache-tomcat | ||
+ | </syntaxhighlight> | ||
+ | Tomcat 9.0 | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | cp -r /usr/local/apache-tomcat-9.0 ~/apache-tomcat | |
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | Tomcat 10.0 | |
− | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | cp -r /usr/local/apache-tomcat-10.0 ~/apache-tomcat | |
</syntaxhighlight> | </syntaxhighlight> | ||
+ | Następnie należy odblokować [[Binexec]] oraz [[Rezerwacja portów|zarezerwować]] 2 porty TCP. | ||
− | + | == Konfiguracja == | |
+ | W pliku konfiguracyjnym serwera Tomcat <code class="directory">/usr/home/LOGIN/apache-tomcat/conf/server.xml</code> 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. | ||
− | |||
<syntaxhighlight lang="xml"> | <syntaxhighlight lang="xml"> | ||
<Connector port="8080" protocol="HTTP/1.1" | <Connector port="8080" protocol="HTTP/1.1" | ||
Linia 23: | Linia 25: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<syntaxhighlight lang="xml"> | <syntaxhighlight lang="xml"> | ||
− | + | <Connector executor="tomcatThreadPool" | |
port="8080" protocol="HTTP/1.1" | port="8080" protocol="HTTP/1.1" | ||
connectionTimeout="20000" | connectionTimeout="20000" | ||
redirectPort="8443" /> | redirectPort="8443" /> | ||
− | |||
</syntaxhighlight> | </syntaxhighlight> | ||
<syntaxhighlight lang="xml"> | <syntaxhighlight lang="xml"> | ||
− | + | <Server port="8005" shutdown="SHUTDOWN"> | |
</syntaxhighlight> | </syntaxhighlight> | ||
− | Resztę konfiguracji serwera Tomcat należy ustawić samodzielnie. Po zmianie niezbędnych ustawień | + | |
+ | Resztę konfiguracji serwera Tomcat należy ustawić samodzielnie. Po zmianie niezbędnych ustawień należy ustawić zmienną <code>CATALINA_BASE="/usr/home/LOGIN/apache-tomcat"</code> poprzez dodanie jej w nowo utworzonym przez pliku setenv.sh w /usr/home/LOGIN/apache-tomcat/bin/. W miejscu LOGIN należy podać login swojego konta hostingowego. Do tego samego pliku można również wstawić ograniczenie RAM dla serwera Tomcat przy pomocy zmiennej CATALINA_OPTS, przykład: | ||
+ | |||
+ | CATALINA_OPTS='-Xms512m -Xmx1024m' | ||
+ | |||
+ | Serwer Tomcat uruchomia się poleceniem: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | apache-tomcat | + | ~/apache-tomcat/bin/startup.sh |
</syntaxhighlight> | </syntaxhighlight> | ||
− | Aby serwer był dostępny na porcie 80 należy [[WWW#Proxy|utworzyć | + | Aby serwer był dostępny na porcie 80/443 należy [[WWW#Proxy|utworzyć domenę typu proxy]] z adresem docelowym localhost i portem docelowym takim samym jaki został wpisany w <code>Connector port</code>. |
− | |||
− | |||
− | + | == 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 <code class="directory">/usr/home/ | + | ''Tomcat'' obsługuje serwowanie wielu aplikacji webowych na jednym serwerze. Aby dodać nową należy zarezerwować dodatkowy port TCP oraz trzeba dopisać do pliku <code class="directory">/usr/home/LOGIN/apache-tomcat/conf/server.xml</code> konfigurację nowej strony: |
<syntaxhighlight lang="xml"> | <syntaxhighlight lang="xml"> | ||
<Service name="webapp"> | <Service name="webapp"> | ||
Linia 58: | Linia 62: | ||
</Service> | </Service> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
+ | == Automatyczne uruchamianie serwera Tomcat == | ||
+ | Aby Tomcat startował automatycznie po ponownym uruchomieniu serwera należy utworzyć odpowiednie zadanie w [[Cron]]. W formularzu w [[DevilWEB|panelu konta hostingowego]] po przejściu do Cron należy wybrać uruchamianie po reboot. W przypadku dodawania zadania poprzez SSH utworzyć wpis z @reboot. Wpis uruchamiający serwer: | ||
+ | |||
+ | <syntaxhighlight lang="bash"> | ||
+ | /bin/sh /usr/home/LOGIN/apache-tomcat/bin/startup.sh | ||
+ | </syntaxhighlight> | ||
+ | |||
[[Category:Java]] | [[Category:Java]] |
Aktualna wersja na dzień 17:08, 21 lis 2022
Spis treści
Przygotowanie
Pierwszym krokiem jest skopiowanie serwera do swojego katalogu domowego poleceniem:
Tomcat 8.5
cp -r /usr/local/apache-tomcat-8.5 ~/apache-tomcat
Tomcat 9.0
cp -r /usr/local/apache-tomcat-9.0 ~/apache-tomcat
Tomcat 10.0
cp -r /usr/local/apache-tomcat-10.0 ~/apache-tomcat
Następnie należy odblokować Binexec oraz zarezerwować 2 porty TCP.
Konfiguracja
W pliku konfiguracyjnym serwera Tomcat /usr/home/LOGIN/apache-tomcat/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ń należy ustawić zmienną CATALINA_BASE="/usr/home/LOGIN/apache-tomcat"
poprzez dodanie jej w nowo utworzonym przez pliku setenv.sh w /usr/home/LOGIN/apache-tomcat/bin/. W miejscu LOGIN należy podać login swojego konta hostingowego. Do tego samego pliku można również wstawić ograniczenie RAM dla serwera Tomcat przy pomocy zmiennej CATALINA_OPTS, przykład:
CATALINA_OPTS='-Xms512m -Xmx1024m'
Serwer Tomcat uruchomia się poleceniem:
~/apache-tomcat/bin/startup.sh
Aby serwer był dostępny na porcie 80/443 należy utworzyć domenę typu proxy z adresem docelowym localhost i portem docelowym takim samym jaki został wpisany w Connector port
.
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/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 "%r" %s %b" /> </Host> </Engine> </Service>
Automatyczne uruchamianie serwera Tomcat
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. Wpis uruchamiający serwer:
/bin/sh /usr/home/LOGIN/apache-tomcat/bin/startup.sh