我有一个带有两个虚拟主机(块)的 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 {}
块,而无需在主服务器块中重复整个反向代理配置?