0

我一直在尝试将 nginx 设置为代理,其中请求基于子域路由到上游。我希望示例更清楚

upstream ubuntu {
  server  www.ubuntu.com:443;
}
upstream google {
  server  www.google.com:443;
}

server {
        listen 443 ssl ;

        ssl_certificate /etc/ssl/certs/client-certs/server.crt;
        ssl_certificate_key /etc/ssl/certs/client-certs/server.key;
        ssl_session_timeout 5m;
        ssl_protocols  TLSv1.2;
        resolver 127.0.0.1 ipv6=off;

    # Make site accessible from http://localhost/
    server_name ~^(.*)\.test\.com$;

    location / {
            proxy_pass https://$1;
            proxy_set_header X-Forwarded-Proto $scheme;
    }
}

所以如果我请求https://google.test.com它应该去https://www.google.com

使用此当前设置,nginx 会为我查询的任何站点返回 404。虽然我可以看到该请求转到我查询的上游站点(在本例中为 google.com)。

如果我缺少任何东西,就得不到。

4

0 回答 0