我在AWS中有一个nginx实例,该实例具有上游应用程序层。
nginx有两个要求
- 活着
-使用解析器动态解析上游
我能够使它们中的任何一个起作用。
这是使keepalive工作的配置:
upstream "backend" {
server "appserver.example.com:443";
keepalive 250;
}
server {
resolver 10.0.0.2 valid=60s;
server_name _;
location / {
proxy_http_version 1.1;
proxy_pass https://backend;
}
}
这是DNS解析器正常工作的配置:
server {
resolver 10.0.0.2 valid=60s;
server_name _;
set $backend appserver.example.com:443;
location / {
proxy_http_version 1.1;
proxy_pass https://$backend;
}
}
如何在开放源代码NGinx中不使用第三方插件的情况下使DNS解析器和keepalive正常工作
最佳答案
根据这个Nginx wiki page
似乎有jdomain Plugin
http {
resolver 8.8.8.8;
resolver_timeout 10s;
upstream backend {
jdomain www.baidu.com;
# keepalive 10;
}
server {
listen 8080;
location / {
proxy_pass http://backend;
}
}
}