В OSX вместо localhost: 8090, как я могу использовать только localhost с Jetty? - PullRequest
0 голосов
/ 19 марта 2012

Я использую внешний API, где необходима пара домен / ключ, а имя домена не переносит порт. Поэтому для моей локальной среды разработки мне нужно было бы использовать URL без порта. Я использую причал.

Есть идеи, если / как это может быть достигнуто?

Ответы [ 2 ]

1 голос
/ 20 марта 2012

(Часть того, что я пишу, может быть очевидна для вас, но я предпочитаю быть явным)

Когда вы говорите, что хотите иметь URL без порта, этоозначает, что вы действительно хотите работать на порте 80.

Если URL-адрес не содержит порт, подразумевается порт по умолчанию для схемы.Порт по умолчанию для http равен 80, поэтому http://www.google.com/ совпадает с http://www.google.com:80/

Итак, чтобы ваш сервер Jetty был доступен на http://localhost/, вам нужно, чтобы он был доступен на порту 80.

Существует 3 широких варианта:

  1. На самом деле запустить его на порту 80. Однако в большинстве операционных систем только пользователь с правами администратора (root) может запускать службы на портах нижечем 1024, поэтому вам нужно будет запустить / запустить причал как root.На OSX это можно сделать, запустив Jetty с sudo.Есть более сложные способы сделать это, но если вы просто работаете на своем рабочем столе, sudo - самый простой.Вы можете прочитать о некоторых других способах здесь: http://wiki.eclipse.org/Jetty/Howto/Port80

  2. Используйте функции операционной системы для сопоставления запросов на порт 80 с портом, на котором работает Jetty.В Linux (и других подобных операционных системах) вы можете использовать ipchains или iptables (описанная выше страница Port80 ), в Mac OSX ipfw может справиться с задачей.Вот пример для запуска Tomcat через порт 80 на OSX , точно такие же инструкции будут работать для Jetty - в вашем случае просто измените 8080 на 8090.

  3. Поставьте другой сервер (например, Apache HTTPd) перед Jetty.Запустите этот сервер на порту 80 и настройте его для запросов прокси на ваш сервер Jetty.См .: http://wiki.eclipse.org/Jetty/Howto/Configure_mod_proxy

Вариант № 2, вероятно, то, что вы хотите, но вам нужно решить для себя.

1 голос
/ 19 марта 2012

Согласно этому документу , который я только что нашел на веб-сайте Jetty, вы можете настроить порты в файле jetty.xml:

Тогда поиск в Google 'jetty.xml port' привел меня на эту страницу (потому что я хотел пример синтаксиса): Howto / Configure Jetty ,

, который был, но также привел меня к использованию этой командной строки, где они указывают порт из командной строки при запуске Jetty:

java -Djetty.port=80 -jar start.jar etc/jetty.xml

...