2012-03-30 37 views
1

我使用openfire的xmpp到我的网站。我已经完成了一个服务器移动,并将该站点重新定位在与openfire相同的服务器上,因为之前它们都位于不同的服务器上。调试/ HTTP绑定/问题Openfire

由于移动im在我的网站上的/ http-bind /请求获得错误500。

如何调试这还是什么我需要考虑的是可以在/ HTTP绑定导致错误500/

错误日志

[警告]代理:无协议处理程序是有效的URL/http-bind /。如果您使用的是mod_proxy的DSO版本,请确保代理子模块包含在使用LoadModule的配置中。

+0

错误日志显示[warn] proxy:没有协议处理程序对URL/http-bind /有效。如果您使用的是mod_proxy的DSO版本,请确保代理子模块包含在使用LoadModule的配置中。 – GarytheWorm 2012-03-30 11:30:24

回答

0

简短回答:您需要在Apache中加载'proxy_http'模块。

我在setting up BOSH with Apache的Prosody文档中编写了一些说明,但它们应该同样适用于任何BOSH/XMPP服务器。特别是我不确定Openfire是否对/http-bind/http-bind/有关。因此,如果以下说明不起作用,请尝试在网址的末尾添加/

摘要

运行:sudo a2enmod rewrite proxy proxy_http

添加以下行到你的Apache配置:

<Location /http-bind> 
    Order allow,deny 
    Allow from all 
</Location> 
RewriteEngine On 
RewriteRule ^/http-bind$ http://example.com:5280/http-bind [P,L] 
0

我想补充一点,有一个正确配置的服务器,你可以只是把这个在您的网页文件夹根目录下的.htaccess中:

<IfModule mod_rewrite.c> 
RewriteEngine On 

# Rule1 
RewriteCond %{REQUEST_URI} ^/chat1/http-bind 
RewriteRule ^.*$ http://chatsrv1.joynmenow.com:7070/http-bind/ [P,L] 

# Rule 2 
RewriteCond %{REQUEST_URI} ^/chat2/http-bind 
RewriteRule ^.*$ http://chatsrv2.joynmenow.com:7070/http-bind/ [P,L] 

</IfModule> 

我不完全确定需要什么配置才能在.htaccess中允许这样做,但是我的godaddy VPS允许我在默认配置中执行此操作。