nginx 常见报错
nginx 常见报错
1.1 nginx 113: No route to host
用容器启动的nginx服务启动正常,upstream访问后端的时候,nginx日志里有报错:
- failed (113: No route to host) while connecting to upstream
百度查询是防火墙原因,但查看firewalld和iptables都是退出的状态
发现使用过iptables -F清除iptables的规则后,docker启动容器自身启动受影响
firewall 的底层是使用 iptables 进行数据过滤,建立在 iptables 之上,而Docker 使用 iptables 来进行网络隔离和管理,这可能会与 Docker 产生冲突。当 firewalld 启动或者重启的时候,将会从 iptables 中移除 Docker 的规则,从而影响了 Docker 的正常工作
//清空防火墙规则
iptables -F
//重启docker
systemctl restart docker
//重启容器nginx再测试
docker resatrt nginx
2.1 nginx页面白屏 ERR_INCOMPLETE_CHUNKED_ENCODING 200
某网站,为实现https,配置了nginx反向代理,打开网站页面发现白屏,F12打开浏览器的network,发现某些js文件加载报错 ERR_INCOMPLETE_CHUNKED_ENCODING 200
原因:
- 磁盘满了
- nginx的临时目录(/proxy_temp)过大或没有权限写入缓存文件
//当代理文件大小超过配置的proxy_temp_file_write_size值时,nginx会将文件写入到临时目录下(默认为/proxy_temp)。 //如果nginx中/proxy_temp过大或者没有写权限,缓存文件就写不进去了。 //直接删除Nginx缓存文件; rm -rf /usr/local/nginx/proxy_temp //设置Nginx的缓存过期时间; //调整/proxy_temp权限为配置nginx的那个用户; chown -R www:www /usr/local/nginx/proxy_temp
- nginx的缓冲区(Proxy Buffer)设置较小
//修改nginx proxy_buffer_size 1024k; proxy_buffers 16 1024k; proxy_busy_buffers_size 2048k; proxy_temp_file_write_size 2048k;
本文来自博客园,作者:liwenchao1995,转载请注明原文链接:https://www.cnblogs.com/liwenchao1995/p/16596178.html