将nginx proxy_pass传递到外部URL失败

问题描述 投票:0回答:1

我想将nginx配置为proxy_pass我的域* xyz.abc.com到外部URL,例如google.com / ...,这个想法与此post相同。但它不断显示以下错误:

 [error] 12725#12725: *1530410 no resolver defined to resolve google.com, client: 27.64.99.7, server: ~^(?<name>\w+)\.xyz\.abc\.com$, request: "GET /favicon.ico HTTP/1.1", host: "ivy1.xyz.abc.com", referrer: "http://ivy1.xyz.abc.com/"

这是我的配置

 server {
    server_name ~^(?<name>\w+)\.xyz\.abc\.com$;
    location / {

      proxy_pass https://google.com/$name$request_uri;
      proxy_set_header Host $proxy_host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

我的配置有问题吗?我正在使用nginx 1.11.6

nginx reverse-proxy nginx-reverse-proxy
1个回答
0
投票

作为@Richard的建议,我在位置上下文中设置了解析器,这解决了我的问题。

  resolver 8.8.8.8;
  resolver_timeout 10s;
© www.soinside.com 2019 - 2024. All rights reserved.