David Tibbe: Apache-ReverseProxy mit mehreren Locations

Hallo zusammen,

für eine Anwendung nutze ich einen Apache als Reverse-Proxy. Der Server soll zu verschiedenen Backends proxien. Dazu habe ich folgende VHost-Konfiguration erstellt:

  
<VirtualHost *:443>  
  DocumentRoot "c:\Program Files (x86)\Apache\htdocs"  
  <Directory />  
    Options None  
    AllowOverride None  
  </Directory>  
	  
  ErrorLog "logs/ssl-error.log"  
  LogLevel trace6  
  LogLevel ssl:warn  
  CustomLog "logs/ssl-access.log" combined  
  
  SSLEngine on  
  SSLCertificateFile	"c:\Program Files (x86)\Apache\ssl\server.crt"  
  SSLCertificateKeyFile	"c:\Program Files (x86)\Apache\ssl\server.key"  
  SSLCipherSuite EECDH+AES:EDH+AES:RSA+AES:3DES:!RC4:!aNULL:!eNULL:!EXP:!MEDIUM:!LOW:!MD5  
  SSLProtocol -ALL +TLSv1 +TLSv1.1 +TLSv1.2  
	  
  <Location /OtherLocation>  
    ProxyPass		http://localhost:8001/  
    ProxyPassReverse	http://localhost:8001/  
  </Location>  
	  
  <Location />  
    ProxyPass		http://localhost:8002/  
    ProxyPassReverse	http://localhost:8002/  
  </Location>  
</VirtualHost>  

Nun rufe ich die URL https://localhost/files/styles/styles.css auf. Diese wird mir auch korrekt ausgegeben, sie ist von http://localhost:8002/ serviert wurden (etwas gekürzt):

[Wed May 28 10:01:24.551203 2014] [core:trace5] [pid 3488:tid 1008] protocol.c(616): [client ::1:50147] Request received from client: GET /files/styles/styles.css HTTP/1.1
[Wed May 28 10:01:24.551203 2014] [core:trace3] [pid 3488:tid 1008] request.c(236): [client ::1:50147] request authorized without authentication by access_checker_ex hook: /files/styles/styles.css
[Wed May 28 10:01:24.551203 2014] [proxy_http:trace1] [pid 3488:tid 1008] mod_proxy_http.c(59): [client ::1:50147] HTTP: canonicalising URL //localhost:8002/files/styles/styles.css
[Wed May 28 10:01:24.551203 2014] [proxy_http:trace1] [pid 3488:tid 1008] mod_proxy_http.c(1923): [client ::1:50147] HTTP: serving URL http://localhost:8002/files/styles/styles.css

Wenn ich jetzt aber https://localhost/OtherLocation aufrufe, so wird ebenfalls versucht, die Anfrage von jenem Backend-Server beantworten zu lassen:

[Wed May 28 10:01:28.092464 2014] [core:trace5] [pid 3488:tid 1008] protocol.c(616): [client ::1:50147] Request received from client: GET /OtherLocation HTTP/1.1
[Wed May 28 10:01:28.092464 2014] [core:trace3] [pid 3488:tid 1008] request.c(236): [client ::1:50147] request authorized without authentication by access_checker_ex hook: /OtherLocation
[Wed May 28 10:01:28.092464 2014] [proxy_http:trace1] [pid 3488:tid 1008] mod_proxy_http.c(59): [client ::1:50147] HTTP: canonicalising URL //localhost:8002/OtherLocation
[Wed May 28 10:01:28.092464 2014] [proxy:debug] [pid 3488:tid 1008] proxy_util.c(2168): [client ::1:50147] AH00944: connecting http://localhost:8002/OtherLocation to localhost:8002

Das Apache-Handbuch sagt doch eigentlich, dass der spezifischste Location-Container genutzt wird. Im letzten Fall sollte dies doch der Proxy zum Backend auf Port 8001 sein.

Als Apache kommt der Apache 2.4.9 auf Windows (Builds von der ApacheLounge) zum Einsatz.

Hat jemand eine Idee?

Danke & Grüße,
  David

--
>>Nobody will ever need more than 640k RAM!<<
1981 Bill Gates