Chcę uruchomić moją aplikację internetową jako http://localhost
.
Chcę uruchomić moją aplikację internetową jako http://localhost
.
Odpowiedzi:
1) Przejdź do conf
folderu w katalogu instalacyjnym tomcat
e.g. C:\Tomcat 6.0\conf\
2) Edytuj następujący tag w server.xml
pliku
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
3) Zmień port=8080
wartość naport=80
4) Zapisz plik.
5) Zatrzymaj Tomcat i uruchom go ponownie.
etc/default/tomcat7
zestawie AUTHBIND=yes
, aby uniknąć błędu PermissionDenied dla portu 80.
Ubuntu 14.04 LTS w Amazon EC2. Poniższe kroki rozwiązały ten problem:
1. Edytuj plik server.xml i zmień port = „8080” na „80”
sudo vi /var/lib/tomcat7/conf/server.xml
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
2. Edytuj plik tomcat7 (jeśli plik nie został utworzony, musisz go utworzyć)
sudo vi /etc/default/tomcat7
odkomentuj i zmień # AUTHBIND = nie na tak
3. Zainstaluj authbind
sudo apt-get install authbind
4. Uruchom następujące polecenia, aby zapewnić tomcat7 odczyt + wykonanie na porcie 80.
sudo touch /etc/authbind/byport/80
sudo chmod 500 /etc/authbind/byport/80
sudo chown tomcat7 /etc/authbind/byport/80
5. Zrestartuj tomcat:
sudo /etc/init.d/tomcat7 restart
authbind
, tylko dodaje ustawienie.
W systemie Linux opartym na Debianie (a więc także w Ubuntu) musisz również przejść do /etc/default/tomcat7
, odkomentować #AUTHBIND=no
linię i ustawić jej wartość na „tak”, aby umożliwić serwerowi połączenie się z uprzywilejowanym portem.
W systemach Ubuntu i Debian potrzeba kilku kroków:
W pliku server.xml zmień wiersz <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
na port="80"
.
Zainstaluj zalecany (nie wymagany) pakiet authbind za pomocą polecenia takiego jak:
sudo apt-get install authbind
Włącz authbind w pliku server.xml (w jednym /etc/tomcat6
lub drugim /etc/tomcat7
), odkomentowując i ustawiając linię taką jak:
AUTHBIND=yes
Potrzebne są wszystkie trzy kroki.
Próbowałem zmienić port z 8080
na 80
w, server.xml
ale to nie zadziałało. Potem znalazłem alternatywę, zaktualizuj to, iptables
co na pewno ma wpływ na wydajność.
Używam następujących poleceń:
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
Ponieważ poprzednie odpowiedzi nie działały dobrze (było dobrze, ale za mało) dla mnie na serwerze Ubuntu 14.04, wspominam o tych zaleceniach (to jest cytat).
Edycja: zauważ, że jak @ jason-faust wspomniał o tym w komentarzach, 14.04, authbind
pakiet, który jest z nim dostarczany, obsługuje teraz IPv6, więc preferowanie IPv4 nie jest już potrzebne .
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 "$@"
Jeśli już mam setenv.sh
plik /usr/share/tomcat7/bin
z CATALINA_OPTS
, masz do wykorzystania:
export CATALINA_OPTS="$CATALINA_OPTS -Djava.net.preferIPv4Stack=true"
Teraz możesz zmienić port na 80
zgodnie z innymi odpowiedziami.
Na nowoczesnym Linuksie najlepszym podejściem (dla mnie) jest użycie xinetd:
1) utwórz /etc/xinet.d/tomcat-http
service http
{
disable = no
socket_type = stream
user = root
wait = no
redirect = 127.0.0.1 8080
}
2) utwórz /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 on
4) /etc/init.d/xinetd start
Jeśli ktoś szuka, jak zmienić numer portu tomcat w środowisku użytkownika Eclipse IDE to postępuje zgodnie z instrukcjami.
1. W widoku Serwery kliknij dwukrotnie nazwę serwera:
2. Spowoduje to otwarcie strony konfiguracji Tomcat w następujący sposób:
3. Zwróć uwagę, że numery portów są pokazane w tabeli po prawej stronie. Kliknij, aby edytować, na przykład:
4. Spowoduje to zmianę numeru portu HTTP z 8080 na 80. Naciśnij Ctrl + S, aby zapisać zmianę i zrestartować serwer. Zmianę numeru portu możemy zauważyć w widoku konsoli:
Ta cała zawartość została pobrana z poniższego linku, proszę odnieść się do tego linku, aby uzyskać dalsze informacje dzięki. http://www.codejava.net/servers/tomcat/how-to-change-port-numbers-for-tomcat-in-eclipse
Uruchomienie poniższego polecenia działało z. Próbowałem zmienić server.xml
i plik konfiguracyjny, ale oba nie działały.
/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
jeśli używasz eclipse i modyfikowanie server.xml nie działa, spróbuj postępować zgodnie z artykułem .. mają kroki, aby zmodyfikować port, jeśli używasz IDE, takiego jak eclipse.
Po prostu goto conf folder conf of tomcat
otwórz plik server.xml
Przejdź do jednego z węzłów łącznika, które wyglądają jak poniżej
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
Po prostu zmień port
zapisz i uruchom ponownie tomcat
Oto kroki:
-> Podążaj ścieżką: {katalog tomcat> / conf -> Znajdź tę linię:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
zmień numer portu z „8080” na „80”.
-> Zapisz plik.
-> Zrestartuj serwer :)