Apache ProxyPass oder ProxyPassMatch, um eine Datei vom Proxy auszuschließen


8

Ich habe einen VirtualHost so eingestellt, dass er alle Anforderungen an einen anderen Server weiterleitet, der auf Port 9000 ausgeführt wird.

Was ich habe :

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

Was ich versucht habe:

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

Nichts davon hat funktioniert ...

Ich möchte eine Datei oder eine Reihe von Dateien vom Proxy ausschließen. In der Dokumentation steht etwas über "Die! -Richtlinie ist in Situationen nützlich, in denen Sie ein Unterverzeichnis nicht rückwärts proxyieren möchten.", Aber es gibt keine Beispiele für diese Situation.

Antworten:


13

Ok, es hat sich herausgestellt, es stellt sich heraus, dass es offensichtlich nicht notwendig ist, den Proxy für ausgeschlossene Pfade anzugeben.

ProxyPass / somedir!

funktioniert super


Hmm. Dies ist interessant, da Sie mit dieser Anweisung möglicherweise das Verzeichnis "/ images" auf dem Server ausschließen können, wenn Sie AJP zum Verknüpfen mit Tomcat verwenden (zum Bereitstellen von dynamischem JSP-Inhalt), sodass Tomcat die Images anstelle von Tomcat bereitstellt Kater???
Djangofan

Nun, das tut es. Ich bin mir nicht sicher, ob ich deine Frage verstehe.
Andrei

2
Beachten Sie, dass dies vor den anderen ProxyPass-Anweisungen erfolgen muss, um eine Wirkung zu erzielen, da die erste Übereinstimmung diejenige ist, die angewendet wird.
Ryan C. Thompson
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.