小知识:Nginx DNS resolver配置实例

nginx 通过 proxy_pass 和 upstream server 通信的时候需要手动指定 resolver。某些时候 DNS 解析失败就会出现这个错误:

复制代码代码如下:
domain.com could not be resolved.

可以指定多个 DNS 并重置域名 TTL 延长 nginx 解析缓存来保障解析成功率:

复制代码代码如下:
resolver 223.5.5.5 223.6.6.6 1.2.4.8 114.114.114.114 valid=3600s;

如果还有解析错误,可以用 dnsmasq 在本地自建 DNS,顺带还有加速解析的好处:

复制代码代码如下:

#/etc/dnsmasq.conf

domain-needed

bogus-priv

cache-size=51200

listen-address=127.0.0.1

#server=223.5.5.5

resolv-file=/etc/resolv.conf

另外需要注意的是 proxy_pass 并不是每次请求都会进行解析,如果 upstream IP 频繁变动,需要强制解析:

复制代码代码如下:

# via http://forum.nginx.org/read.php?2,215830,215832#msg-215832

resolver 127.0.0.1;

set $backend “foo.example.com”;

proxy_pass http://$backend;
声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:Linux系统(Centos6.5以上)安装jdk教程解析

2023-5-7 2:11:17

建站知识

小知识:如何在Linux环境为用户添加sudo权限

2023-5-7 2:19:42

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索