2012-12-04 58 views
0

我tryting设置波什的Openfire,使其经过设置代理后,未找到的,我已经设置404阿帕奇波什

如下代理的Apache

<VirtualHost XX.XX.XXX.XXX:80> 
    ServerName mydomain.com 
    ServerAlias www.mydomain.com 
    DocumentRoot /home/mydomainname/public_html 
    ServerAdmin [email protected] 
    UseCanonicalName Off 

    ProxyRequests Off 

    <Proxy *> 
     Order deny,allow 
     Allow from all 
    </Proxy> 

    ProxyPass /http-bind/ http://www.mydomain.com:7070/http-bind/ 
    ProxyPassReverse /http-bind/ http://www.mydomain.com:7070/http-bind/ 


    <IfModule mod_suphp.c> 
     suPHP_UserGroup mydomainname mydomainname 
    </IfModule> 
    <IfModule !mod_disable_suexec.c> 
     SuexecUserGroup mydomainname mydomainname 
    </IfModule> 

    ScriptAlias /cgi-bin/ /home/mydomainname/public_html/cgi-bin/ 


</VirtualHost> 

但是,当我设置BOSH连接到/ HTTP绑定/或http://mydomain.com/http-bind

它返回404 ERROR在发送使用strophe.js

我需要无法anythi XMPP BOSH请求ng在apache2?

我的设置是根据/etc/httpd/conf/httpd.conf

挖www.mydomain.com

; <<>> DiG 9.3.6-P1-RedHat-9.3.6-20.P1.el5_8.5 <<>> www.mydomain.com 
    ;; global options: printcmd 
    ;; Got answer: 
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4697 
    ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 

    ;; QUESTION SECTION: 
    ;www.mydomain.com.  IN A 

    ;; ANSWER SECTION: 
    www.mydomain.com. 14400 IN CNAME mydomain.com. 
    mydomain.com.  14400 IN A XX.XX.XXX.XXX 

    ;; Query time: 61 msec 
    ;; SERVER: 8.8.8.8#53(8.8.8.8) 
    ;; WHEN: Wed Dec 5 02:2 

    0:20 2012 
    ;; MSG SIZE rcvd: 66 

getent主机www.mydomain.com

XX.XX.XXX.XXX mydomain.com www.mydomain.com 

卷曲http://www.mydomain.com:7070/http-bind/

HTTP ERROR 400 

Problem accessing /http-bind/. Reason: 

    Bad Request 
Powered by Jetty:// 
+0

第一:当你得到404时,你期望*得到什么?按顺序检查的东西:在服务器上运行时,“dig www.mydomain.com”会返回什么内容?在您的服务器上运行时,“getent hosts www.mydomain.com”会返回什么内容?在服务器上运行时,curl http://www.mydomain.com:7070/http-bind /'返回什么?这些问题的答案将有助于缩小问题的范围。 – Ladadadada

+0

@Ladadadada aplz查看更新 – Hunt

+0

这是一个400错误而不是404,但可能是因为我们没有提供适当的POST参数或类似的东西。它确实让我们知道,至少该请求使它远至码头。看看你的Jetty日志,看看有没有什么有用的。 – Ladadadada

回答

0

为了能够使用ProxyPassProxyPassReverse,您需要首先启用Apache mod_proxy。

host# a2enable mod_proxy 
host# /etc/init.d/apache2 restart 
+0

'a2enable'是未知的命令,因为我使用的是centOS 5.X – Hunt