Ten działa. Ludzie Linuksa przynajmniej działają dla mnie z Ubuntu 14.04.2 LTS.
Rodrigo Gurgel
3
Autobind to poprawna odpowiedź. Pamiętaj jednak, że możesz pominąć automatyczne przypisywanie w przypadku używania „sudo startup.sh”, ponieważ port 80 zostanie przyznany eskalowanemu użytkownikowi.
Marcio Jasinski
1
Dzięki!! Wiedziałem o włączaniu authbind w konfiguracji serwera, ale nie wiedziałem, że muszę utworzyć plik w authbind dla zarejestrowanego portu! Chciałbym, żeby OP zmienił przyjęte rozwiązanie na tę odpowiedź! (Widzę, że spóźniłeś się prawie 3 lata z odpowiedzią: P)
Fr0zenFyr
1
Działa z Tomcat 9 na Lubuntu 18.0.4, bez instalacji authbind, tylko dodaje ustawienie.
Marco Sulla,
107
W systemie Linux opartym na Debianie (a więc także w Ubuntu) musisz również przejść do /etc/default/tomcat7, odkomentować #AUTHBIND=nolinię i ustawić jej wartość na „tak”, aby umożliwić serwerowi połączenie się z uprzywilejowanym portem.
Nie działa dla Tomcat (jeśli jest zainstalowany przez zip / tar.gz) w 13.10.
Gorkamorka
4
Aby uruchomić go z zip / tar.gz, wykonaj kroki 1 i 2 powyżej, dodaj AUTHBIND = yes do bin / setenv.sh (utwórz, jeśli nie ma) i zacznij od roota. Działa z LTS 12.04, powinien też działać w / 13.10.
Karol
W moim przypadku nie powiodło się (bez komunikatu o błędzie w catalina.out) bez pakietu authbind, działało po jego zainstalowaniu
golimar
Czy mógłbyś wskazać dokumentację dotyczącą AUTHBIND = yes? Nigdzie go nie znajduję.
ARX
Nie mogę też znaleźć wzmianki o ustawieniu AUTHBIND jako części konfiguracji elementu serwera w dokumentacji TOMCAT. Dziwne.
Peter N. Steinmetz
22
Próbowałem zmienić port z 8080na 80w, server.xmlale to nie zadziałało. Potem znalazłem alternatywę, zaktualizuj to, iptablesco na pewno ma wpływ na wydajność.
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, authbindpakiet, 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.shplik /usr/share/tomcat7/binz CATALINA_OPTS, masz do wykorzystania:
Dodam, że plik startup.sh znajduje się pod adresem: /usr/share/tomcat7/bin/startup.sh - Dla nas nowicjuszy nie jest to do końca oczywiste;)
ConMan
Zaktualizowano ścieżki @ConMan, to świetny pomysł, aby zapisać inne wyszukiwania. Przyznam, że poznanie tego miejsca na początku nie jest oczywiste.
smonff
1
Dzięki, to działało świetnie, jestem przyzwyczajony do centów, więc to było dla mnie pomocne, gdzie nie było to dla mnie problemem.
med116
1
Właśnie podążyłem za tym dzisiaj 14.04, pakiet authbind, który jest z nim dostarczany, obsługuje teraz IPv6, więc preferowanie IPv4 nie jest już potrzebne.
Jason Faust
Zrobiłem też: chmod 755 /usr/share/tomcat7/bin/setenv.sh
Casey Harrils
5
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
}
Innym podejściem jest kompilacja i używanie jsvc, ale xinetd jest zdecydowanie łatwiejszy
cgdave
5
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:
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.
Odpowiedzi:
1) Przejdź do
conf
folderu w katalogu instalacyjnym tomcat2) Edytuj następujący tag w
server.xml
pliku3) Zmień
port=8080
wartość naport=80
4) Zapisz plik.
5) Zatrzymaj Tomcat i uruchom go ponownie.
źródło
etc/default/tomcat7
zestawieAUTHBIND=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”
2. Edytuj plik tomcat7 (jeśli plik nie został utworzony, musisz go utworzyć)
odkomentuj i zmień # AUTHBIND = nie na tak
3. Zainstaluj authbind
4. Uruchom następujące polecenia, aby zapewnić tomcat7 odczyt + wykonanie na porcie 80.
5. Zrestartuj tomcat:
źródło
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.źródło
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"/>
naport="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.
źródło
Próbowałem zmienić port z
8080
na80
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ń:
http://www.excelsior-usa.com/articles/tomcat-amazon-ec2-advanced.html#port80
źródło
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 .Jeśli już mam
setenv.sh
plik/usr/share/tomcat7/bin
zCATALINA_OPTS
, masz do wykorzystania:Teraz możesz zmienić port na
80
zgodnie z innymi odpowiedziami.źródło
Na nowoczesnym Linuksie najlepszym podejściem (dla mnie) jest użycie xinetd:
1) utwórz /etc/xinet.d/tomcat-http
2) utwórz /etc/xinet.d/tomcat-https
3) chkconfig xinetd on
4) /etc/init.d/xinetd start
źródło
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
źródło
Uruchomienie poniższego polecenia działało z. Próbowałem zmienić
server.xml
i plik konfiguracyjny, ale oba nie działały.źródło
Na serwerze linux możesz po prostu użyć tych poleceń, aby ponownie skonfigurować Tomcat do nasłuchiwania na porcie 80:
źródło
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.
źródło
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
Po prostu zmień port
zapisz i uruchom ponownie tomcat
źródło
Oto kroki:
-> Podążaj ścieżką: {katalog tomcat> / conf -> Znajdź tę linię:
zmień numer portu z „8080” na „80”.
-> Zapisz plik.
-> Zrestartuj serwer :)
źródło
Nie zapomnij edytować pliku. Otwórz plik
/etc/default/tomcat7
i zmieńdo
następnie uruchom ponownie.
źródło