用apache代理到节点的代理请求,但包含特定路径的请求除外

时间:2019-01-22 02:23:15

标签: apache codeigniter mod-rewrite proxy reverse-proxy

我需要将服务器上的所有请求代理到端口8000上的节点,但路径中包含/ api / ci的请求除外。

这是我当前的配置,它的问题在于它将所有内容都路由到端口8000,包括/ api / ci请求,而不是允许它们直接访问后端。由于某些原因,未应用/ api / ci规则,而是对其进行了代理。后端是使用Codeigniter框架在PHP中构建的。

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

<Location /api/ci/>
    ProxyPass !
</Location>

<Location />
    ProxyPass http://localhost:8000/
    ProxyPassReverse http://localhost:8000/
</Location>

1 个答案:

答案 0 :(得分:0)

请勿在例外情况的末尾添加“ /”:

<Location /api/ci>
    ProxyPass !
</Location>

您还可以使用通配符,例如:

<Location /api/ci/*>
        ProxyPass !
</Location>