nginx反向代理学习过程中问题及解决总结

您所在的位置:网站首页 nginx反向代理不能返回 nginx反向代理学习过程中问题及解决总结

nginx反向代理学习过程中问题及解决总结

#nginx反向代理学习过程中问题及解决总结| 来源: 网络整理| 查看: 265

本文记录的是up自己遇到这些问题的解决方法,目的是让记录供日后学习,有相同问题小伙伴给一个思路,也可以评论私信我。

背景:家里有一台存放数据的NAS,系统为群辉,并且安装了docker,在docker上安装有homeassistant容器,up有自己的域名,家中外网ip是动态ip,之前是花生壳DDNS,后来改了aliyun解析域名(在docker中安装了DDNS)

,家中普通路由器做的端口映射,可以实现外网通过http方式访问家中NAS和homeassistant。后来因为homeassistant中部署一个服务,实现小爱同学接入homeassistant,接口必须通过https访问,所以,为了签发SSL证书通过HTTPS访问并且更安全,在docker中又部署了let's encrypt,实现自签SSL证书,并且内置反向代理nginx。

/docker/lets_encrypt/dns-conf,这个路径下的aliyun.ini文件access_key和access_key_secret修改,在阿里云DNS解析官网。还有容器80端口和443端口的转发用于SSL签发的验证。

let's encrypt参数

过程中出现的几个头疼问题!!!解决方法

设置反向代理后,网址访问返回

这个是本地服务名称如果设置错误,不一致,找不到这个服务,就会出现这个问题,具体可以查看nginx的logs。例如你的一个服务config里homeassistant(这个是我的服务名,也就是我docker里容器的名称)和我实际docker中容器的名称不一致例如docker里叫homeassistant1,就会报502。

2.在我配置homeassistant反向代理时出现了

400 bad request

实际测试发现,请求是已经到了homeassistant,却被拒绝了,查看nginx的logs发现是通过的,是返回了400。查看homeassistant的logs时发现,

A request from a reverse proxy was received from 172.18.0.4, but your HTTP integration is not set-up for reverse proxies

实际是收到访问请求后给拒绝了。

解决办法 修改configuration.yaml

添加

http:

  use_x_forwarded_for: true

  trusted_proxies:

    - 172.30.33.1  # 添加访问的ip白名单

各位遇到问题也可以评论,看见了一起研究解答以下。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3