代码之家  ›  专栏  ›  技术社区  ›  naiquevin

apache代理模块出现403禁止错误

  •  10
  • naiquevin  · 技术社区  · 16 年前

    我试图使用apache的代理模块在ubuntu桌面上与xmpp一起工作。为此,我做了以下事情-

    1) 通过创建代理的符号链接启用mod\u代理。conf,代理。加载并代理http。从mods enabled目录中的/etc/apache2/mods available/加载。

    2) 将以下行添加到vhost

        <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可用/proxy中。形态

    现在我尝试访问 http://mydomain.com/httpbind 显示403禁止错误。。

    我错过了什么?请帮忙。谢谢

    编辑:当我在mods\u available/proxy中更改以下代码时,问题得到了解决。形态

        <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>
    

    但没有发现初始代码有什么问题

    2 回复  |  直到 16 年前
        1
  •  14
  •   Alex    14 年前

    我知道这是个老问题,但我在谷歌搜索中偶然发现了这个问题。只是简单解释一下为什么代码最初不起作用。

    在代理定义中,定义“订单拒绝,允许”。这意味着deny语句将优先于allow语句。您的配置中有“拒绝所有人”。因为这是优先考虑的,所以不管你是否“允许所有人”,它仍然会拒绝所有人。

        2
  •  0
  •   Chris Frederick    15 年前