11

我正在尝试使用 apache 的代理模块在 ubuntu 桌面上使用 xmpp。为此,我做了以下事情 -

1) 通过从 mods-enabled 目录中的 /etc/apache2/mods-available/ 创建 proxy.conf、proxy.load 和 proxy_http.load 的符号链接来启用 mod_proxy。

2)在虚拟主机中添加了以下几行

    <Proxy http://mydomain.com/httpbind>
     Order allow,deny
     Allow from all
   </Proxy>

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

我是使用代理模块的新手,但我可以从上面几行中得到的是将请求http://mydomain.com/httpbind转发到http://mydomain.com:7070/http-bind/. 如有错误请指正。

3)Allow from .mydomain.com在 /mods-available/proxy.conf 中添加规则

现在我尝试访问http://mydomain.com/httpbind,它显示 403 Forbidden 错误..

我在这里想念什么?请帮忙。谢谢

编辑:当我在 mods_available/proxy.conf 中更改以下代码时,问题得到了解决

    <Proxy *>
            AddDefaultCharset off
            Order deny,allow
    Deny from all 
    Allow from mydomain.com                        
    </Proxy>

    <Proxy *>
            AddDefaultCharset off
            Order deny,allow
    #Deny from all 
    Allow from all                         
    </Proxy>

虽然没有得到初始代码有什么问题

4

2 回答 2

14

我知道这是一个老问题,但我在谷歌搜索中遇到了它。只是快速解释一下为什么代码最初不起作用。

在您的代理定义中,您定义“订单拒绝,允许”。这意味着拒绝语句将优先于允许语句。您的配置中有“全部拒绝”。由于这具有优先权,因此无论您是否拥有“全部允许”,它仍然会拒绝所有。

于 2012-10-04T14:47:19.957 回答
0

尝试使用 mod_proxy 和 iframe 发出跨子域 ajax (XHR) 请求一文中的示例。

于 2010-08-20T00:02:19.957 回答