Apache ProxyPass o ProxyPassMatch per escludere un file dal proxy


8

Ho un VirtualHost impostato per eseguire il proxy di tutte le richieste su un altro server in esecuzione sulla porta 9000.

Ciò che ho :

ProxyPass / http://localhost:9000/
ProxyPassReverse / http://localhost:9000/

Cosa ho provato:

! ProxyPass /test.html http://localhost:9000/
ProxyPass /test.html ! http://localhost:9000/
ProxyPassMatch !^/(.*\.html)$ http://localhost:9000/$1 

Nessuno dei quali ha funzionato ...

Vorrei escludere un file o una serie di file dal proxy, la documentazione dice "La direttiva! È utile nelle situazioni in cui non si desidera invertire una sottodirectory", ma non ci sono esempi per quella situazione.

Risposte:


13

Ok, capito, risulta che - ovviamente - non è necessario specificare il proxy per i percorsi esclusi.

ProxyPass / somedir!

funziona alla grande


Hmm. Questo è interessante perché se si utilizza AJP per collegarsi a Tomcat (per servire contenuti JSP dinamici), questa direttiva potrebbe consentire, ad esempio, di escludere la directory "/ images" sul server in modo che Tomcat serva le immagini anziché Tomcat ???
Djangofan,

Bene, lo fa. Non sono sicuro di aver capito la tua domanda.
Andrei,

2
Nota che questo deve precedere le altre direttive ProxyPass per avere un effetto, poiché la prima corrispondenza è quella che viene applicata.
Ryan C. Thompson,
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.