servire tutte le richieste tramite proxy * tranne * uno specifico


11

Ho il seguente nel mio 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>

Funziona bene poiché tutte le richieste per http://foo.org vengono soddisfatte dalla porta 5012 usando un altro server web. Tuttavia, voglio servire solo http://foo.org/lib tramite Apache dalla porta 80. Come posso farlo? L'aggiunta delle seguenti righe alla conf non aiuta

Alias /lib /path/to/lib

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

Risposte:


18

Puoi evitare il proxy per una posizione specifica dicendo mod_proxydi ignorarlo con un !per una destinazione:

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

eccezionale! è stato così facile! Ho provato NoProxye ProxyMatch with various regexpsinutilmente. Grazie.
punk
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.