Voglio eseguire la mia app Web come http://localhost
.
Voglio eseguire la mia app Web come http://localhost
.
Risposte:
1) Vai alla conf
cartella nella directory di installazione di Tomcat
e.g. C:\Tomcat 6.0\conf\
2) Modifica il seguente tag nel server.xml
file
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
3) Modificare il port=8080
valore inport=80
4) Salva file.
5) Arrestare Tomcat e riavviarlo.
etc/default/tomcat7
set AUTHBIND=yes
, per evitare un errore PermissionDenied per la porta 80.
Ubuntu 14.04 LTS, in Amazon EC2. I seguenti passaggi hanno risolto questo problema per me:
1. Modifica server.xml e cambia port = "8080" in "80"
sudo vi /var/lib/tomcat7/conf/server.xml
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
2. Modifica il file tomcat7 (se il file non è stato creato, devi crearlo)
sudo vi /etc/default/tomcat7
decommentare e modificare # AUTHBIND = no in yes
3. Installa authbind
sudo apt-get install authbind
4. Eseguire i comandi seguenti per fornire tomcat7 read + execute sulla porta 80.
sudo touch /etc/authbind/byport/80
sudo chmod 500 /etc/authbind/byport/80
sudo chown tomcat7 /etc/authbind/byport/80
5. Riavvia Tomcat:
sudo /etc/init.d/tomcat7 restart
authbind
, aggiungendo solo l'impostazione.
Su Linux basato su Debian (incluso Ubuntu incluso) devi anche andare a /etc/default/tomcat7
, decommentare la #AUTHBIND=no
linea e impostare il suo valore su 'yes', al fine di consentire al server di legarsi su una porta privilegiata.
Sui sistemi Ubuntu e Debian, sono necessari diversi passaggi:
In server.xml, modifica la riga <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
in avere port="80"
.
Installa il pacchetto authbind raccomandato (non richiesto), con un comando come:
sudo apt-get install authbind
Abilita authbind nel file server.xml (in uno /etc/tomcat6
o o /etc/tomcat7
) decommentando e impostando la riga come:
AUTHBIND=yes
Sono necessari tutti e tre i passaggi.
Ho provato a cambiare la porta da 8080
a 80
in server.xml
ma non ha funzionato per me. Poi ho trovato un'alternativa, aggiorna quella di iptables
cui sono sicuro che abbia un impatto sulle prestazioni.
Uso i seguenti comandi:
sudo /sbin/iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
sudo /sbin/service iptables save
http://www.excelsior-usa.com/articles/tomcat-amazon-ec2-advanced.html#port80
Poiché le risposte precedenti non funzionavano bene (era buono, ma non abbastanza) per me su un server Ubuntu 14.04, menziono questi consigli (questa è una citazione).
Modifica: nota che come @ jason-faust lo ha menzionato nei commenti, il 14.04, il authbind
pacchetto fornito con esso ora supporta IPv6, quindi la cosa preferita IPv4 non è più necessaria .
1) Install authbind
2) Make port 80 available to authbind (you need to be root):
touch /etc/authbind/byport/80
chmod 500 /etc/authbind/byport/80
chown tomcat7 /etc/authbind/byport/80
3) Make IPv4 the default (authbind does not currently support IPv6).
To do so, create the file TOMCAT/bin/setenv.sh with the following content:
CATALINA_OPTS="-Djava.net.preferIPv4Stack=true"
4) Change /usr/share/tomcat7/bin/startup.sh
exec authbind --deep "$PRGDIR"/"$EXECUTABLE" start "$@"
# OLD: exec "$PRGDIR"/"$EXECUTABLE" start "$@"
Se hai già un setenv.sh
file /usr/share/tomcat7/bin
con CATALINA_OPTS
, devi usare:
export CATALINA_OPTS="$CATALINA_OPTS -Djava.net.preferIPv4Stack=true"
Ora puoi cambiare la porta 80
come indicato in altre risposte.
Su Linux moderno l'approccio migliore (per me) è usare xinetd:
1) crea /etc/xinet.d/tomcat-http
service http
{
disable = no
socket_type = stream
user = root
wait = no
redirect = 127.0.0.1 8080
}
2) creare /etc/xinet.d/tomcat-https
service https
{
disable = no
socket_type = stream
user = root
wait = no
redirect = 127.0.0.1 8443
}
3) chkconfig xinetd acceso
4) /etc/init.d/xinetd start
Se qualcuno sta cercando, come modificare il numero di porta Tomcat nell'utente IDE Eclipse sono i seguenti passaggi.
1.Nella vista Server, fai doppio clic sul nome del server:
2.Questo aprirà una pagina di configurazione per Tomcat come segue:
3. Notare che i numeri di porta sono mostrati nella tabella a destra. Fare clic per modificare, ad esempio:
4.Questo cambierà il numero di porta per HTTP da 8080 a 80. Premi Ctrl + S per salvare la modifica e riavviare il server. È possibile individuare la modifica del numero di porta nella vista Console:
Tutto questo contenuto è stato preso dal link sottostante, si prega di fare riferimento a quel link per ulteriori informazioni, grazie. http://www.codejava.net/servers/tomcat/how-to-change-port-numbers-for-tomcat-in-eclipse
L'esecuzione del comando di seguito ha funzionato con. Ho provato a cambiare server.xml
e il file conf ma entrambi non hanno funzionato.
/sbin/iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp --dport 8080 -j ACCEPT
/sbin/iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
se stai usando eclipse e modificando server.xml non funziona per te allora prova a seguire l' articolo .. hanno dei passaggi per modificare la porta se stai usando IDE come eclipse.
Vai alla cartella conf di Tomcat
aprire il file server.xml
Vai a uno dei nodi del connettore che assomigliano al seguente
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
Basta cambiare la porta
salva e riavvia tomcat
Ecco i passaggi:
-> Segui il percorso: {directory tomcat> / conf -> Trova questa riga:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
cambia il numero di porta da "8080" a "80".
-> Salva il file.
-> Riavvia il server :)