详解proxy_pass、upstream与resolver
转载自 详解proxy_pass、upstream与resolver 应用场景 这里列举几个应用场景,下文会针对这几个场景并结合代码进行分析。 (1)proxy_pass + upstream upstream foo.example.com { server 127.0.0.1:8001; } server { listen 80; server_name localhost; location /foo { proxy_pass http://foo.example.com; } } 访问 http://localhost/foo ,proxy模块会将请求转发到127.0.0.1的8001端口上。 (2)只有proxy_pass,没有upstream与resolver server { listen 80; server_name localhost; location /foo { proxy_pass http://foo.example.com; } } 实际上是隐式创建了upstream,upstream名字就是 foo.example.com 。upstream模块利用本机设置的DNS服务器(或/etc/hosts),将 foo.example.com 解析成IP,访问 http://localhost/foo ,proxy模块会将请求转发到解析后的IP上。