
我有一個帶有兩個虛擬主機(區塊)的 NGINX 配置server {}
:一個在主網域上為人類可讀的網站提供服務,另一個則充當子網域上的專門服務的反向代理。
http {
<...>
server {
listen 443 ssl http2;
server my.tld;
<...>
location / {
root /srv/http;
<...>
}
}
server {
listen 443 ssl http2;
server svc.my.tld;
<complex reverse-proxy setup with many location blocks>
}
}
由於某種原因,專業服務的某些客戶端將其請求發送到主網域(即我看到my.tld/api/endpoint
而不是svc.my.tld/api/endpoint
在日誌中)。我無法修復這些客戶端。他們也不遵循重定向。
有沒有辦法透明地將這些請求重定向到正確的server {}
區塊,而無需在主伺服器區塊中複製整個反向代理配置?