Configurare Jetty per accettare connessioni da tutti gli host su Ubuntu Lucid


15

Voglio che Jetty serva le connessioni da qualsiasi host sulla porta 8080. Il mio /etc/default/jettyfile ha: -

NO_START=0
JETTY_HOST=
JETTY_PORT=8080

Il server è una piccola istanza EC2 basata su un'AMI del server Lucid Lynx a 32 bit. APT è configurato con multiverso abilitato e l'archivio partner canonico abilitato. Jetty è 6.1.22 dal repository partner.

Quando inizio a utilizzare il molo sudo /etc/init.d jetty start, funziona e ascolta le connessioni da localhost, ma non ad altri: -

ubuntu@ip-10-224-70-51:/etc/network/if-pre-up.d$ sudo netstat -nlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
PID/Program name
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
413/sshd
tcp6       0      0 127.0.0.1:8080          :::*                    LISTEN
5655/jsvc
tcp6       0      0 :::22                   :::*                    LISTEN
413/sshd
udp        0      0 0.0.0.0:68              0.0.0.0:*
260/dhclient3
Active UNIX domain sockets (only servers)
Proto RefCnt Flags       Type       State         I-Node   PID/Program name    P
ath
unix  2      [ ACC ]     STREAM     LISTENING     1407     1/init              @
/com/ubuntu/upstart
unix  2      [ ACC ]     STREAM     LISTENING     4021     407/dbus-daemon     /
var/run/dbus/system_bus_socket

Qualche idea sul perché la mia configurazione Jetty non sembra ascoltare altri host sarebbe molto apprezzata!

Risposte:


13

Trovato! Hai bisogno: -

JETTY_HOST=0.0.0.0

per ascoltare altri host. Quindi un file minimo / etc / default / jetty include: -

JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun
NO_START=0
JETTY_HOST=0.0.0.0
JETTY_PORT=8080 

2
alcune distribuzioni di moli non superano JETTY_HOST env var. aggiungi -Djetty.port=$JETTY_PORTal JAVA_OPTIONS env (o simile)
ithkuil

Per qualche strana ragione su Ubuntu questa opzione è etichettata come quella da cui il molo degli host accetterà connessioni. Mi ha fatto ingannare per un po '.
Synchro,

È inoltre possibile utilizzare JETTY_ARGSin /etc/default/jetty(con doppi apici):JETTY_ARGS="jetty.host=127.0.0.1 jetty.port=8080 jetty.spdy.port=8443 jetty.secure.port=443"
Ludovic Kuty

3

Per chiunque voglia usare Jetty su Ubuntu con Java JDK di Sun, queste sono le cose che devono essere cambiate /etc/default/jetty:

NO_START=0    # so jetty can be started.

JETTY_HOST=0.0.0.0    # so jetty listens to all hosts.

JETTY_PORT=8999    # optionally, port on which jetty listens (in my case 8999).

JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun    # very important, your JAVA_HOME dir.

Questo è tutto ciò che è necessario per eseguire il molo su Ubuntu. (Ho trascorso un'ora e mi sono reso conto che mi mancava JAVA_HOMEanche se l'ho definito in .bashrc)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.