Ben /api
farklı uç noktalara gidiyor altyolları ile tek bir konum altında hizmet etmek istiyorum API uç noktaları bir çift var . Özellikle, webdis adresinde /api
ve tescilli bir API adresinde kullanılabilir olmasını istiyorum /api/mypath
.
Ben webis API ile çatışmalar hakkında endişelenmiyorum çünkü redis komut isimleri ile çatışması muhtemel olmayan alt yollar kullanıyorum ve ayrıca çakışmaları önlemek için API tasarımı üzerinde tam kontrole sahibim.
İşte test sunucumdan hacklediğim yapılandırma dosyası:
server {
listen 80;
server_name localhost;
server_name 192.168.3.90;
server_name 127.0.0.1;
location / {
root /home/me/src/phoenix/ui;
index index.html;
}
# temporary hardcoded workaround
location = /api/mypath/about {
proxy_pass http://localhost:3936/v1/about;
}
location /api {
rewrite ^/api/(.*)$ /$1 break;
proxy_pass http://localhost:7379/;
}
# tried this but it gives "not found" error
#location ^~ /api/mypath/ {
# rewrite ^/api/mypath/(.*)$ /$1 break;
# proxy_pass http://localhost:3936/v1/;
#}
#
#location ^~ /api {
# rewrite ^/api/(.*)$ /$1 break;
# proxy_pass http://localhost:7379/;
#}
}
Geçici /api/mypath/*
çözümümü, 3936 numaralı bağlantı noktasındaki uç noktaya ve diğer her şeyi 7379 numaralı bağlantı noktasına gitmek için nasıl değiştirebilirim ?
tried this to no avail
? Bu konum yönergesini etkinleştirdiğinizde ne oldu? Bağlantı zamanaşımı? Konum eşleşmedi mi?