Jak zmusić serwer Jetty do nasłuchiwania na porcie 80?


13

Chciałbym użyć Jetty jako serwera WWW.

Zedytowałem plik konfiguracyjny /etc/default/jettyi ustawiłem:

# change to 0 to allow Jetty start
NO_START=0

# Listen to connections from this network host
# Use 0.0.0.0 as host to accept all connections.
JETTY_HOST=0.0.0.0

Teraz mogę uzyskać dostęp do serwera Jetty pod adresem, http://192.168.1.10:8080ale chciałbym, aby Jetty nasłuchiwał na porcie 80.

Próbowałem tego ustawienia w tym samym pliku konfiguracyjnym:

# The network port used by Jetty
JETTY_PORT=80

a następnie ponownie uruchom Jetty za pomocą, sudo service jetty restartale to nie działa.

Jak mogę zmienić, aby serwer Jetty nasłuchiwał na porcie 80?


możesz to zmienić także od start.ini (root mola), tam masz -> jetty.port - linia, odkomentuj i nadaj mu wartość (domyślnie 8080)
Rodislav Moldovan

Odpowiedzi:


7

Będziesz musiał edytować /etc/jetty/jetty.xmlplik. Poszukaj akapitu, który mówi:

<Call name="addConnector">
      <Arg>
          <New class="org.mortbay.jetty.nio.SelectChannelConnector">
            <Set name="host"><SystemProperty name="jetty.host" /></Set>
            <Set name="port"><SystemProperty name="jetty.port" default="8090"/></Set>
            <Set name="maxIdleTime">30000</Set>
            <Set name="Acceptors">2</Set>
            <Set name="statsOn">false</Set>
            <Set name="confidentialPort">8443</Set>
        <Set name="lowResourcesConnections">5000</Set>
        <Set name="lowResourcesMaxIdleTime">5000</Set>
          </New>
      </Arg>
    </Call>

Zmień jetty.portwłaściwość na 80:

<Set name="port"><SystemProperty name="jetty.port" default="80"/></Set>

Uruchom ponownie molo. Że należy to zrobić.


Ponieważ powyższa metoda nie działała w przypadku OP i odradza się uruchamianie jako root, istnieje alternatywna metoda, jak wspomniano w tym dokumencie .


To nie działa Sprawdziłem również, sudo netstat -nlpale Jetty nie ma na liście.
Jonas

Może tak być, ponieważ molo nie działa jako root. Próbuję ustawienia i wkrótce opublikuję.
theTuxRacer

Byłem w stanie uzyskać domyślną stronę, uruchamiając sudo java -jar start.jarz /usr/share/jetty. Skonfigurowałem również, /etc/jetty/jetty-setuid.xmlaby zaczynał jako użytkownik uprzywilejowany.
theTuxRacer


1
Biegnę sudo /sbin/iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080i teraz działa dobrze. Dzięki!
Jonas


1

Korzystam z Jetty 9. W pliku start.ini można znaleźć i zmodyfikować właściwość jetty.port. Następnie musisz ponownie uruchomić jetty.service.


Może być przydatny, jeśli rozszerzysz swoją odpowiedź, określając lokalizację pliku start.ini, wiersz w pliku start.ini, który należy zmodyfikować, i zmodyfikowany tekst, który należy użyć.
CentaurusA
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.