nginx 反向代理no resolver defined to resolve

ndcsxx 2015-01-05 01:12:02
我在linux服务器上 的nginx.conf文件里这样配置反向代理
linux服务器的ip 假设为 111.111.111.111
location ~ /(.*)/ {
proxy_pass http://$1.xx:80/;
}
linux host 文件 里设置了 123.123.123.123 a.xx
这里的ip 123.123.123.123 是 另外一台window服务器的地址
然后我在第三台电脑访问 111.111.111.111/a/ 失败了
查看nginx的error.log 发现里面写着
no resolver defined to resolve a.xx
在linux 上ping a.xx 可以ping通
...全文
5021 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Newcomer2012 2016-07-12
  • 打赏
  • 举报
回复
这样将变量作为反向代理的地址的话会在Nginx0.6.18以后的版本中都会提示“ no resolver defined to resolve ”的类似错误,而在proxy_pass 中直接设置地址却不会。,原因是Nginx0.6.18以后的版本中启用了一个resolver指令,在使用变量来构造某个server地址的时候一定要用resolver指令来制定DNS服务器的地址,所以解决这个问题的方法很简单:在nginx的配置文件中的http{}部分添加一行resolver 8.8.8.8;即可

25,980

社区成员

发帖
与我相关
我的任务
社区描述
高性能WEB开发
社区管理员
  • 高性能WEB开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧