Je souhaite exécuter mon application Web en tant que http://localhost
.
Je souhaite exécuter mon application Web en tant que http://localhost
.
Réponses:
1) Accédez au conf
dossier dans le répertoire d'installation de tomcat
e.g. C:\Tomcat 6.0\conf\
2) Modifier la balise suivante dans le server.xml
fichier
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
3) Modifiez la port=8080
valeur enport=80
4) Enregistrez le fichier.
5) Arrêtez votre Tomcat et redémarrez-le.
etc/default/tomcat7
ensemble AUTHBIND=yes
, pour éviter une erreur PermissionDenied pour le port 80.
Ubuntu 14.04 LTS, dans Amazon EC2. Les étapes suivantes ont résolu ce problème pour moi:
1. Modifiez server.xml et remplacez le port = "8080" par "80"
sudo vi /var/lib/tomcat7/conf/server.xml
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
2. Modifiez le fichier tomcat7 (si le fichier n'est pas créé, vous devez le créer)
sudo vi /etc/default/tomcat7
décommentez et remplacez # AUTHBIND = no par yes
3. Installez authbind
sudo apt-get install authbind
4. Exécutez les commandes suivantes pour fournir tomcat7 read + execute sur le port 80.
sudo touch /etc/authbind/byport/80
sudo chmod 500 /etc/authbind/byport/80
sudo chown tomcat7 /etc/authbind/byport/80
5. Redémarrez tomcat:
sudo /etc/init.d/tomcat7 restart
authbind
, en ajoutant uniquement le paramètre.
Sur un Linux Debian (donc Ubuntu inclus), vous devez également vous rendre /etc/default/tomcat7
, décommenter la #AUTHBIND=no
ligne et définir sa valeur sur «yes», afin de permettre au serveur de se lier sur un port privilégié.
Sur les systèmes Ubuntu et Debian, plusieurs étapes sont nécessaires:
Dans server.xml, modifiez la ligne <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
pour avoir port="80"
.
Installez le package authbind recommandé (non requis), avec une commande comme:
sudo apt-get install authbind
Activez authbind dans le fichier server.xml (dans l'un /etc/tomcat6
ou l' autre /etc/tomcat7
) en décommentant et en définissant la ligne comme:
AUTHBIND=yes
Les trois étapes sont nécessaires.
J'ai essayé de changer le port de 8080
à 80
dans le server.xml
mais cela n'a pas fonctionné pour moi. Ensuite, j'ai trouvé une alternative, mettre à jour le iptables
dont je suis sûr qu'il y a un impact sur les performances.
J'utilise les commandes suivantes:
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
Comme les réponses précédentes n'ont pas bien fonctionné (c'était bien, mais pas assez) pour moi sur un serveur Ubuntu 14.04, je mentionne ces recommandations (c'est une citation).
Edit: notez que comme @ jason-faust l'a mentionné dans les commentaires, le 14.04, le authbind
paquet qui l'accompagne prend en charge IPv6 maintenant, donc la chose préférée IPv4 n'est plus nécessaire .
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 "$@"
Si vous avez déjà un setenv.sh
fichier /usr/share/tomcat7/bin
avec CATALINA_OPTS
, vous devez utiliser:
export CATALINA_OPTS="$CATALINA_OPTS -Djava.net.preferIPv4Stack=true"
Vous pouvez maintenant changer le port 80
comme indiqué dans d'autres réponses.
Sur Linux moderne, la meilleure approche (pour moi) est d'utiliser xinetd:
1) créez /etc/xinet.d/tomcat-http
service http
{
disable = no
socket_type = stream
user = root
wait = no
redirect = 127.0.0.1 8080
}
2) créez /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 sur
4) /etc/init.d/xinetd start
Si quelqu'un cherche, comment changer le numéro de port tomcat dans l'utilisateur Eclipse IDE sont les étapes suivantes.
Dans la vue Serveurs, double-cliquez sur le nom du serveur:
Cela ouvrira une page de configuration pour Tomcat comme suit:
3.Notez que les numéros de port sont indiqués dans le tableau de droite. Cliquez pour modifier, par exemple:
4. Cela changera le numéro de port pour HTTP de 8080 à 80. Appuyez sur Ctrl + S pour enregistrer la modification et redémarrer le serveur. Nous pouvons repérer le changement de numéro de port dans la vue Console:
Tout ce contenu a été tiré du lien ci-dessous, veuillez vous référer à ce lien pour plus d'informations merci. http://www.codejava.net/servers/tomcat/how-to-change-port-numbers-for-tomcat-in-eclipse
L'exécution de la commande ci-dessous a fonctionné avec. J'ai essayé de changer server.xml
et le fichier conf mais les deux n'ont pas fonctionné.
/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
si vous utilisez eclipse et que la modification de server.xml ne fonctionne pas pour vous, essayez l' article suivant .. ils ont des étapes pour modifier le port si vous utilisez l'IDE comme eclipse.
Allez dans le dossier de conf de tomcat
ouvrez le fichier server.xml
Aller à l'un des nœuds de connecteur qui ressemble à ce qui suit
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
Changez simplement le port
enregistrer et redémarrer tomcat
Voici les étapes:
-> Suivez le chemin: {répertoire tomcat> / conf -> Trouvez cette ligne:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
changer le numéro de port de "8080" à "80".
-> Enregistrez le fichier.
-> Redémarrez le serveur :)