![无法使 ejabberd 预绑定工作](https://linux22.com/image/587689/%E6%97%A0%E6%B3%95%E4%BD%BF%20ejabberd%20%E9%A2%84%E7%BB%91%E5%AE%9A%E5%B7%A5%E4%BD%9C.png)
我正在尝试使 BOSH 会话的预绑定正常工作。
我希望能够在我的 CMS 中对用户进行身份验证,然后在他访问聊天时让他登录,为此,我发现https://github.com/smokeclouds/http_prebind,一切正常,我能够按照以下步骤进行编译:
rake configure
sed -i 's/AUTH_USER/a_user/g' src/http_prebind.erl
sed -i 's/AUTH_PASSWORD/a_password/g' src/http_prebind.erl
sed -i 's/EJABBERD_DOMAIN/jabber.my.tld/g' src/http_prebind.erl
rake build
rake install
然后将 http 请求绑定添加到配置中:
{5280, ejabberd_http, [
{request_handlers,
[
{["http-prebind"], http_prebind}
]},
%%captcha,
http_bind,
http_poll,
http_prebind,
web_admin
]}
]}.
据我了解,我现在应该能够简单地请求一个新的会话,如下所示:
curl -u a_user:a_password http://jabber.my.tld:5280/http-prebind/some_user
但无论怎样我总能得到Unauthorized
回应。
对这个有什么想法吗?
PS:我也尝试了 Mod-Http-Pre-Bind,但由于它不需要密码,所以我更喜欢使用 http_prebind。
PPS:用户名为 AUTH_USER 、密码为 AUTH_PASSWORD 的用户是否必须存在?我目前正在使用管理员帐户。