Linux中DNS(nameserver)出错导致nginx启动巨慢(nginx -t也慢)

今天发现,重启一下nginx居然需要几分钟,往常也就是几秒钟的事儿啊,很奇怪。

随后发现,即使是检查配置

nginx -t

也需要两三分钟,恼了。

于是一步步简化配置nginx.conf试图找出在哪里卡住了。

终于发现,配置中涉及到后端反向代理的时候,就会很慢。

于是ping一下后端的域名或IP,

在发送数据包之前,ping会卡一下,大约十秒钟。

会不会是dns错误导致的呢?

检查下 /etc/resolve.conf

排在第一行的name server,ping一下,完全不通;

第二行的是通的。

遂,删掉第一行的dns服务器。

 

重新尝试

nginx -t

完全正常了。

 

总结一下,nginx在重启或者检查配置的时候,会检查后端服务器的网络状况,如果name server/DNS查询阻滞,那nginx就会等待。

posted on 2011-12-16 13:51  不务正业的战斗机  阅读(1601)  评论(0编辑  收藏  举报

导航