zoukankan      html  css  js  c++  java
  • OpenResty域名could not be resolved及dnsmasq配置

    在本地开发中使用自己配置的域名例如:wuyachao.com配置在/etc/hostsping wuyachao.com显示ip为127.0.0.1,在使用lua_resty_http时候,会报错

    failed to request: wuyachao.com could not be resolved (5: Operation refused)
    

    OpenResty使用的是Nginx的resolver,不能读取本地配置在/etc/hosts里面的域名nginx-resolver
    (nginx走的是配置文件里面的resolver,并不走/etc/hosts下面的配置,所以可以自己建立一个小型的dns,使得nginx可以解析自己配置的私有域名)

    本地开发可以直接写ip地址,需要使用私有域名时,可以安装dnsmasq。mac配置如下,

    • 安装dnsmasq
    brew install dnsmasq
    
    cp /usr/local/opt/dnsmasq/dnsmasq.conf.example /usr/local/etc/dnsmasq.conf
    
    sudo brew services start dnsmasq
    
    
    • 配置dnsmasq
      在复制的新的/usr/local/etc/dnsmasq.conf 文件中,将对应的配置信息的注释取消掉,
    # /etc/resolv.conf存放的是系统的dns,resolv-file表示根据系统dns列表读取
    resolv-file=/etc/resolv.conf  
    
    # esolv.conf内的DNS寻址严格按照从上到下顺序执行,直到成功为止
    strict-order
    
    # DNS解析hosts时对应的hosts文件,对应no-hosts,填写本地读取的/etc/hosts域名
    addn-hosts=/etc/hosts
    cache-size=1024  
    
    # 多个IP用逗号分隔,192.168.x.x表示本机的ip地址,只有127.0.0.1的时候表示只有本机可以访问。
    # 通过这个设置就可以实现同一局域网内的设备,通过把网络DNS设置为本机IP从而实现局域网范围内的DNS泛解析(注:无效IP有可能导至服务无法启动)
    listen-address=192.168.x.x,127.0.0.1 
    
    # 配置域名
    address=/wuyachao.com/127.0.0.1 
    
    
    • 配置完之后不会直接生效,需要清理缓存
    # 清理缓存
    sudo killall -HUP mDNSResponder
    # 启动
    sudo brew services start dnsmasq
    
    # 重启
    sudo brew services restart dnsmasq
    
    # 停止
    sudo brew services stop dnsmasq
    
    
    • 最后在nginx.conf中的server或者http阶段添加,就生效了
    resolver 127.0.0.1;
    
    
  • 相关阅读:
    python浏览本地文件,实现文件路径的选择
    《一线架构师实践指南》--- Refined Architecture
    第七周学习记录
    第五周学习记录
    中国国民经济行业分类数据下载(含爬取代码)
    python机器学习kmeans算法——对文本进行聚类分析
    TensorFlow2深度学习
    深度学习---Caffe之经典模型详解与实战a乐毅,王斌a
    《深度学习实践-基于Caffe的解析》_薛云峰
    Python带我起飞——入门、进阶、商业实战
  • 原文地址:https://www.cnblogs.com/mentalidade/p/6934162.html
Copyright © 2011-2022 走看看