Добрый день.
Есть сервер с работающим XMPP-сервером openfire. Есть задача: сделать чат на сайте при помощи js. Я выбрал converse.js. Ему (всем подобным) для работы требуется BOSH-сервер. В openfire есть настройка http-binding - то есть, вроде уже из коробки у него должен быть BOSH-сервер. Усложняет всю схему nginx, который работает на хост-системе, как прокси и проксирует запросы на виртуальную машину, на которой и установлен openfire.
В nginx (на главной машине) есть такая настройка:
location /http-bind/ {
proxy_pass http://10.0.0.2:7070/http-bind/;
}
Если в браузере открыть эту страницу, то на экране:
HTTP ERROR: 400
Problem accessing /http-bind/. Reason:
Bad Request
Powered by Jetty://
То есть BOSH, вроде бы, работает... tcpdump показывает обращение к порту 7070. Но сам converse.js не работает: к порту 7070 не обращается и, при этом, не может залогиниться (ошибок не показывает).
Что-то я делаю не правильно. Вот только что?
1. Как проверить работоспособность BOSH-сервера?
2. Есть ли у openfire BOSH-сервер (или нужно ставить, например punjab)?