问题
自己的网站运行了一段时间,突然部分请求突然出现报错:ERR_CONTENT_LENGTH_MISMATCH
分析排查
谷歌了一下大概率是服务器问题 juejin.cn/post/708558…
于是查看我的Ngnix的error日志,有如下报错:
39 open() "/var/lib/nginx/tmp/proxy/2/00/0000000002" failed (13: Permission denied) while reading upstream,
根据部分大神的文章github.com/xhlwill/blo… 可能是权限问题。
先尝试修改proxy
文件夹权限:
chown root.root -R /var/lib/nginx/tmp/proxy
然后重启nginx,发现还是不行,继续排查
查看我的nginx配置
cat /etc/nginx/nginx.conf
发现user是nginx
而已
于是修改user配置为root root
user root root
...其他配置
重启nginx,一切顺利!
总结
只需要改两个地方:
- 修改nginx的user为
root root
# ngix配置文件
user root root
...其他配置
- 设置proxy文件的权限为
root root
# bash命令
chown root.root -R /var/lib/nginx/tmp/proxy
参考资料
serverfault.com/questions/5… serverfault.com/questions/2… stackoverflow.com/questions/2…