Настройка Jetty для приема соединений от всех хостов в Ubuntu Lucid

15

Я хочу, чтобы Jetty обслуживал соединения с любого хоста через порт 8080. Мой /etc/default/jettyфайл имеет: -

NO_START=0
JETTY_HOST=
JETTY_PORT=8080

Сервер представляет собой небольшой экземпляр EC2, основанный на 32-разрядном сервере AMI Lucid Lynx. APT настроен с поддержкой Multiverse и репозитарием канонического партнера. Причал - 6.1.22 от репозитория партнера.

Когда я начинаю использовать Jetty sudo /etc/init.d jetty start, он работает и прослушивает соединения от localhost, но не от других:

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

Будем весьма благодарны за любые идеи по поводу того, почему мой Jetty config не слушает других хостов!

Джим Даунинг
источник

Ответы:

13

Нашел это! Тебе нужно: -

JETTY_HOST=0.0.0.0

слушать других хозяев. Таким образом, минимальный файл / etc / default / jetty включает в себя: -

JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun
NO_START=0
JETTY_HOST=0.0.0.0
JETTY_PORT=8080 
Джим Даунинг
источник
2
некоторые дистрибутивы Jetty не проходят JETTY_HOST env var. добавить -Djetty.port=$JETTY_PORTв JAVA_OPTIONS env (или аналогичный)
ithkuil
По какой-то странной причине в Ubuntu эта опция помечена как существующая, с которой хосты Jetty будут принимать соединения. Меня обманули на некоторое время.
Синхро
Вы также можете использовать JETTY_ARGSв /etc/default/jetty(с двойными кавычками):JETTY_ARGS="jetty.host=127.0.0.1 jetty.port=8080 jetty.spdy.port=8443 jetty.secure.port=443"
Людовик Куты
3

Для тех, кто хочет использовать Jetty в Ubuntu с Sun JDK от Sun, вот что нужно изменить в /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.

Это все, что нужно для запуска пристани на Ubuntu. (Я провел час и понял, что я скучаю, JAVA_HOMEхотя у меня есть это определено в .bashrc)

Счастливый
источник