Mengkonfigurasi Jetty untuk menerima koneksi dari semua host di Ubuntu Lucid

15

Saya ingin Jetty melayani koneksi dari host mana pun di port 8080. /etc/default/jettyFile saya memiliki: -

NO_START=0
JETTY_HOST=
JETTY_PORT=8080

Server adalah instance kecil EC2 berdasarkan Lucid Lynx 32 bit server AMI. APT dikonfigurasi dengan multiverse diaktifkan, dan repositori mitra kanonik diaktifkan. Jetty adalah 6.1.22 dari dari repositori mitra.

Ketika saya mulai menggunakan dermaga sudo /etc/init.d jetty start, ia berfungsi, dan mendengarkan koneksi dari localhost, tetapi tidak untuk yang lain: -

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

Setiap ide tentang mengapa konfigurasi Jetty saya tampaknya tidak mendengarkan host lain akan sangat dihargai!

Jim Downing
sumber

Jawaban:

13

Menemukannya! Anda membutuhkan: -

JETTY_HOST=0.0.0.0

untuk mendengarkan host lain. Jadi file minimal / etc / default / jetty termasuk: -

JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun
NO_START=0
JETTY_HOST=0.0.0.0
JETTY_PORT=8080 
Jim Downing
sumber
2
beberapa distribusi dermaga tidak lulus JETTY_HOST env var. tambahkan -Djetty.port=$JETTY_PORTke JAVA_OPTIONS env (atau serupa)
ithkuil
Untuk beberapa alasan aneh di Ubuntu, opsi ini dilabeli sebagai tempat host jetty akan menerima koneksi. Apakah saya tertipu untuk sementara waktu.
Sinkronisasi
Anda juga dapat menggunakan JETTY_ARGSdi /etc/default/jetty(dengan tanda kutip ganda):JETTY_ARGS="jetty.host=127.0.0.1 jetty.port=8080 jetty.spdy.port=8443 jetty.secure.port=443"
Ludovic Kuty
3

Bagi siapa pun yang ingin menggunakan Jetty di Ubuntu dengan Java JDK milik Sun, ini adalah hal-hal yang perlu diubah /etc/default/jettyfile:

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.

Hanya itu yang diperlukan untuk menjalankan jetty di ubuntu. (Saya menghabiskan satu jam dan menyadari bahwa saya hilang JAVA_HOMEmeskipun saya sudah mendefinisikannya .bashrc)

Beruntung
sumber