通过代理处理除特定请求之外的所有请求

通过代理处理除特定请求之外的所有请求

我的 httpd.conf 中有以下内容

<VirtualHost *:80>
    ServerName foo.org
    ServerAlias www.foo.org

    <Proxy *>
        Options FollowSymLinks MultiViews
        Order allow,deny
        Allow from all
        AllowOverride All
    </Proxy>

    ProxyPass        / http://127.0.0.1:5012/
    ProxyPassReverse / http://127.0.0.1:5012/
</VirtualHost>

这很好,因为所有请求http://foo.org使用不同的 Web 服务器从端口 5012 获得服务。但是,我只想提供http://foo.org/lib通过 Apache 从端口 80 访问。我该怎么做?在配置文件中添加以下几行没有用

Alias /lib /path/to/lib

<Directory "/path/to/lib">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

答案1

您可以通过告诉目的地mod_proxy忽略它来避免代理特定位置:!

ProxyPass        /lib !
ProxyPass        / http://127.0.0.1:5012/
ProxyPassReverse / http://127.0.0.1:5012/

相关内容