LINUX.ORG.RU
ФорумAdmin

jabber-сервер на 80 порту

 , ,


0

2

Есть, допустим, домен example.com, апач на 80 порту и жаббер-сервер на 5222. Вопрос: как сделать так, чтобы при попытке подключиться к jabber.example.com происходило соединение с жаббер-сервером?

Нагуглилось такое решение:

  <VirtualHost *:80>
  ServerName jabber.example.com
  ProxyRequests On
  ProxyVia On
  <Proxy *>
          Order deny,allow
          Allow from all
  </Proxy>
  ProxyPass / http://127.0.0.1:5222/
  </VirtualHost>
Но оно не работает, а при попытке зайти браузером вылетает Proxy Error

при попытке зайти браузером вылетает Proxy Error

удивительное рядом: жаббер-сервер, работающий по хттп

leave ★★★★★ ()

Я, признаться, вообще слабо понимаю, что такое «происходило соединение с жаббер-сервером». Это ваш браузер должен соединиться? Или он должен запустить jabber-клиента? А откуда клиент возьмет настройки для этого хоста, логин/пароль, в конце концов?

leave ★★★★★ ()

А зачем? Браузер протокол Jabber не поддерживает. Для любого нормального IM-клиента порт по умолчанию для Jabber как раз 5222 и, если не криворукий юзер, то ни о каких 80 портах он и знать не узнает.

Ну и наконец протоколы XMMP и HTTP совместимы чуть меньше, чем никак, поэтому использовать Веб-сервер для Jabber-прокси глупо.

Ах да, ещё одна проблема. Соединение всегда идёт на конкретный IP, а не хост-нейм. То есть, если два разных домена ссылаются на один и тот же IP, то для сервера подключения будут выглядеть абсолютно идентично. В случае с HTTP браузер дополнительно в запросе (уже подключившись) указывает желаемое доменное имя и поэтому виртуальные хосты работают.

В случае подключения к Jabber никаких HTTP-заголовков не будет, а значит Nginx понятия не имеют какой хост-нейм имел пользователь.

KivApple ★★★★★ ()
Ответ на: комментарий от leave

удивительное рядом: жаббер-сервер, работающий по хттп

Браузер протокол Jabber не поддерживает.

Я знаю. Но при открытии тем же браузером 5222 порта вылезает xml с ошибкой, а чем кроме браузера и jabber-клиента проверять я не знаю.

MisaMisa ()
Ответ на: комментарий от KivApple

Соединение всегда идёт на конкретный IP, а не хост-нейм. То есть, если два разных домена ссылаются на один и тот же IP, то для сервера подключения будут выглядеть абсолютно идентично.

Т.е. то что я хочу нереализуемо?

MisaMisa ()
Ответ на: комментарий от MisaMisa

Да. Клиент должен объяснить серверу из какого хост-нейма он получил IP. А Веб-сервер знает только HTTP

KivApple ★★★★★ ()

Вам нужны SRV записи в DNS, можно сгенерировать, например тут http://www.jms1.net/jabberd2/srv.shtml

For BIND:
_jabber._tcp.example.com.       IN SRV   0 0 5269   jabber.example.com.
_xmpp-server._tcp.example.com.  IN SRV   0 0 5269   jabber.example.com.
_xmpp-client._tcp.example.com.  IN SRV   0 0 5222   jabber.example.com.
anonymous ()
Ответ на: комментарий от MisaMisa

Тогда апач должен работать как прямой прокси, а хост с апачем должен быть прописан на твоем жабероклиенте как хттп-прокси.

thesis ★★★★★ ()
Ответ на: комментарий от thesis

А вопрос «ЗАЧЕМ?» был о твоей попытке «зайти браузером».
Жеббр сервер, спрятанный за хттп-прокси, не станет волшебным образом веб-сервером с мордой к жаберу.

thesis ★★★★★ ()

Миса, Люцифер! привет, разбань меня в opensuse@conference.jabber.ru скажу ответ!)))

ipwww ★★ ()
Ответ на: комментарий от MisaMisa

в том месте откуда захожу режут все порты кроме 80.

На работе нужно работать, а не фигнёй заниматься.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.