GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare Tomcat 10 su CentOS 8 e Fedora34

Cos'è Tomcat?

In questo articolo, dimostreremo come installare Apache Tomcat su CentOS 8. Prima di iniziare, definiamo esattamente cos'è Apache Tomcat. Apache definisce Tomcat come:"Un contenitore servlet open source, JavaServer Pages, Java Expression Language e tecnologia WebSocket che funge anche da server Web. Offre un ambiente server HTTP basato su "puro Java" in cui Java può essere eseguito .” Tomcat funziona con il linguaggio di programmazione Java ed è associato ad applicazioni web scritte in Java.

Prerequisiti

Il nostro primo compito è assicurarci che il nostro sistema sia aggiornato. Poiché installeremo Tomcat su CentOS 8, eseguiremo i seguenti comandi.

cat /etc/redhat-release 
yum -y install epel-release
yum -y update -y

Successivamente, dobbiamo verificare se Java è già installato.

java -version

Ma se non abbiamo installato Java, riceveremo l'output nello ScreenShot qui sotto.

Installa Java

Andando avanti, installiamo Java.Apache Tomcat non funzionerà correttamente se Java non è presente sul sistema. Inoltre, dobbiamo assicurarci di installare Java OpenJDK 11. Poiché è open source e una versione a lungo termine, lo faremo non incorrere in alcun problema di licenza. Per eseguire questa operazione, utilizzeremo il seguente comando.

dnf install java-11-openjdk-devel -y

Quindi, verificheremo la versione di Java installata eseguendo questo comando.

java -version

Installazione di Tomcat

Nota: Al momento della stesura di questo articolo, l'ultima versione di Tomcat è la 10.0.6. Se desideri scaricare l'ultima versione, visita questo link per il download di Tomcat 10 per verificare la versione più recente.

Quindi, per prima cosa dobbiamo creare un utente per Tomcat.

useradd -r tomcat

Successivamente, creeremo una cartella e quindi utilizzeremo "cd ” comando per cambiare le directory in quella cartella in cui scaricheremo Tomcat.

mkdir /usr/local/tomcat10
cd /usr/local/tomcat10

Ora scarichiamo l'archivio Tomcat usando curl (wget è anche un'opzione se è installato sulla tua versione di CentOS 8.)

curl -o tomcat10.tar.gz https://downloads.apache.org/tomcat/tomcat-10/v10.0.6/bin/apache-tomcat-10.0.6.tar.gz

Nota: L'uso del comando curl con il flag -o ci consente di scaricare il file tar.gz e salvarlo localmente con il nome di file che scegliamo. In questo caso, abbiamo semplicemente salvato il file come tomcat10.tar.gz.

Quindi, successivamente, possiamo decomprimere il file “tomcat10 tar.gz ” nella nostra cartella di lavoro.

tar -xvf tomcat10.tar.gz

Quindi, ora dobbiamo modificare la proprietà della directory /usr/local/tomcat10/.

chown -R tomcat:tomcat /usr/local/tomcat10

Quindi copia i file in apache-tomcat10.0.6 nella directory tomcat10 utilizzando i seguenti comandi:

cd apache-tomcat-10.0.6/
cp -r * /usr/local/tomcat10

Oltre a Per impostazione predefinita, i tuoi file si troveranno in questa cartella:/usr/local/tomcat 10 e i file di configurazione verranno archiviati in:/usr/local/tomcat10/conf

ll

Imposta variabile d'ambiente

Ora possiamo configurare la variabile d'ambiente CATALINA_HOME utilizzando i seguenti comandi:

 echo "export CATALINA_HOME="/usr/local/tomcat10"" >> ~/.bashrc
 source ~/.bashrc

Questa variabile è impostata per garantire che l'accesso al software sia consentito a tutti gli utenti del sistema.

Crea e configura il servizio Systemd

Quindi, per prima cosa, esaminiamo le nostre informazioni Java poiché avremo bisogno di tali informazioni per popolare parte del nostro file di unità.

alternatives --list | grep java

Quindi, per assicurarci di avere Tomcat configurato come servizio, creeremo un semplice file di unità di sistema.

Nota: Un file unit è un record di testo normale che definisce le risorse di sistema che sono disponibili per essere gestite dai demoni di systemd.

touch /etc/systemd/system/tomcat.service
vim /etc/systemd/system/tomcat.service

Ora possiamo aggiungere le seguenti informazioni al nostro nuovo file di unità.

[Unit]
Description=Apache Tomcat Server
After=syslog.target network.target

[Service]
Type=forking
User=tomcat
Group=tomcat

Environment=CATALINA_PID=/usr/local/tomcat10/temp/tomcat.pid
Environment=CATALINA_HOME=/usr/local/tomcat10
Environment=CATALINA_BASE=/usr/local/tomcat10

ExecStart=/usr/local/tomcat10/bin/catalina.sh start
ExecStop=/usr/local/tomcat10/bin/catalina.sh stop

RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target

Questo file unit può contenere più direttive oltre a quelle elencate sopra. Dopodiché, dobbiamo salvare il file (usando :wq) e ricaricare il servizio per applicare le modifiche.

systemctl daemon-reload

Quindi ora possiamo testare il file di configurazione Java di systemd.

Avvia, abilita e controlla lo stato di Tomcat

Quindi, avviamo il servizio Tomcat e quindi abilitiamolo.

[root@unixcop tomcat10]# systemctl start tomcat.service
[root@unixcop tomcat10]# systemctl enable tomcat.service

Ora possiamo verificarne lo stato usando il seguente comando.

systemctl status tomcat.service

Infine, premi il tasto 'q' per uscire dal controllo dello stato e tornare al prompt di bash.

Verifica versione

Per recuperare le informazioni sul server Tomcat, possiamo utilizzare il seguente comando:

/usr/local/tomcat10/bin/version.sh

Test

Quindi, apriamo un browser per testare la connessione.

Carica http://localhost:8080 o http://serverIP:8080 nel tuo browser e dovresti vedere un'immagine come quella qui sotto.

Errori!

Se per caso, ricevi un "err_ssl_protocol_error ” quando visiti http://ip.ad.dr.ess:8080/, verifica l'errore utilizzando curl e, una volta verificato, procedi come segue.

#curl -Iv https://IPADDRESS:8080

Ad esempio, l'ip della mia macchina aggiunge:

curl -Iv https://192.168.232.128:8080

1. Verifica che le porte Java/Tomcat siano aperte nel firewall

firewall-cmd --zone=public --permanent --add-port=8080/tcp
firewall-cmd --zone=public --permanent --add-port=8443/tcp

2. Quindi eseguire un comando netstat per verificare se il server sta ascoltando gli indirizzi IPv4 (e/o l'indirizzo IPv6, se necessario).

Quindi, dopo aver controllato netstat, abbiamo visto che Tomcat era legato solo alle porte del protocollo IPv6.

[root@unixcop tomcat10]# netstat -nlp | grep java

Nota: Quindi potrebbe essere necessario installare Netstat utilizzando il comando "yum install net-tools" per visualizzare questo problema poiché la nostra versione di CentOS 8 non includeva il comando netstat per impostazione predefinita.

Per risolvere questo problema, crea un file chiamato setenv.sh all'interno della tua directory CATALINA_BASE o CATALINA_HOME bin/
(abbiamo usato /usr/local/tomcat10/bin cartella).

Quindi crea un nuovo file chiamato setenv.sh.

cd bin/
touch setenv.sh
vim setenv.sh

Fai clic su Inserisci e aggiungi la seguente riga al file.

JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4Addresses=true "

Questa voce sovrascrive le impostazioni predefinite utilizzate da Tomcat. Una volta completata l'attività, salva ed esci dal file utilizzando “:wq ” e ricaricare i servizi per salvare le nostre modifiche.

systemctl daemon-reload

Quindi ora, controlliamo di nuovo le porte con lo stesso comando:

[root@unixcop tomcat10]# netstat -nlp | grep java
tcp 0 0 0.0.0.0:8080  0.0.0.0:* LISTEN 59815/java
tcp 0 0 127.0.0.1:8005 0.0.0.0:* LISTEN 59815/java
tcp 0 0 0.0.0.0:8009  0.0.0.0:* LISTEN 59815/java

Verifica che le porte firewall corrette siano aperte.

[root@unixcop ~]# firewall-cmd --zone=public --list-ports | grep 8080
8080/tcp 8443/tcp
[root@unixcop ~]# 

Quindi, se tutto ciò fallisce, puoi interrompere e disabilitare temporaneamente il servizio firewall per testare la tua pagina Tomcat:

systemctl disable firewalld
systemctl stop firewalld

Impostazioni di configurazione

Ecco un paio di utili impostazioni di configurazione per Tomcat.

Aggiungi utenti

Quindi potrebbe essere necessario aggiungere nuovi utenti o un utente amministratore. Possiamo farlo andando nella cartella Tomcat conf e modificando queste impostazioni.

[root@unixcop conf]# cd /usr/local/tomcat10/conf 
<!-- user admin can access manager and admin section both -->
<role rolename="admin-gui" />
<user username="admin" password="_SECRET_PASSWORD_" roles="manager-gui,admin-gui" />

Nota:Possiamo aprire il file tramite vi o vim oppure utilizzando il file manager e aprendo il file utilizzando un editor di testo .

Infine, usa :wq per salvare il file.

Cambiare le porte

Quindi, a volte, potresti voler eseguire Tomcat su una porta alternativa. A tal fine, è possibile modificare l'impostazione della porta del connettore nel file server.xml.
Questi sono i passi da compiere.

[root@unixcop conf]# cd /usr/local/tomcat10/conf/
[root@unixcop conf]# vim /usr/local/tomcat10/conf/server.xml

Oltre a Nel file server.xml o da un editor di testo, possiamo modificare la riga "Porta connettore", cambiandola dalla porta 8080 alla 80 o qualsiasi altro numero di porta che scegliamo.

Line
68  <Connector port="8080" protocol="HTTP/1.1"
69        connectionTimeout="20000"
70        redirectPort="8443" />

Conclusione

Nel complesso, Tomcat facilita facilmente lo scambio di dati tra un client e il servlet, fornisce una piattaforma di programmazione per le applicazioni web e assume le funzioni di identificazione e autorizzazione dei client, creando sessioni per ciascuno di essi in modo sicuro e protetto.


Cent OS
  1. Come installare Tomcat 9 su CentOS 7

  2. Come installare Apache Tomcat 8 su CentOS

  3. Come installare Apache Tomcat su CentOS 7

  4. Come installare Tomcat 8 su un VPS CentOS 6

  5. Come installare Tomcat 7 su Centos?

Come installare e configurare Redmine su CentOS 7

Come installare Tomcat 9 su CentOS 8

Come installare Tomcat su CentOS

Come installare Apache Tomcat su CentOS 8

Come installare Apache Tomcat 9 su CentOS 7

Come installare Tomcat e Java su CentOS 8