2016-06-21 3 views
1

Meine Konfiguration verwendet einen Proxy-Pfad für eine URL mit dem Präfix v0.1. Nginx ist kein Proxy für mein Backend. Wenn ich nur auf v umstelle funktioniert alles wie es soll. Mein Verdacht ist, dass die . eine besondere Bedeutung hat.Wie konfiguriere ich einen Nginx-Proxy-Pass für eine URL mit Sonderzeichen

Wie soll ich diese Konfiguration ändern, damit sie funktioniert?

location /v0.1 { 
    proxy_pass http://localhost:8080/; 
} 
+0

vielleicht gehört das auf serverfault ... – iwein

+0

Ich denke, dass Sie Regex dafür verwenden können. Überprüfen Sie 'optional_modifier location_match' hier: https://www.digitalcean.com/community/tutorials/understanding-ginx-server-und-location-block-selection-algorithms –

+0

Möchten Sie die' v0.1' an den Proxy übergeben oder abgestreift? –

Antwort

0

Ich weiß nicht, was Ihre Konfiguration tun soll. Aber ich habe zwei ähnliche Szenarien getestet, die beide wie erwartet funktionieren.

Die erste wird die führende /v0.1 aus der URI löschen, bevor das Senden sieht es stromaufwärts, so dass der Dienst auf 8080 nie den /v0.1 Teil:

location /v0.1/ { 
    proxy_pass http://localhost:8080/; 
} 

Die zweite (einschließlich des /v0.1 prefix) wird die gesamte URI passieren zum stromaufwärts:

location /v0.1 { 
    proxy_pass http://localhost:8080; 
} 

this document für Details.

+0

so komisch ... Ich muss verrückt werden. Es funktioniert wie angekündigt. – iwein

Verwandte Themen