您的位置:首页 > 运维架构 > Nginx

Nginx访问后端应用,net::ERR_CONTENT_LENGTH_MISMATCH问题的解决

2018-03-02 14:38 656 查看
浏览器打开应用,如果需要加载大文件时,nginx会将文件保存到缓存中,此时可能会出现无法加载,报问题所显示的异常。
检查思路:
查看nginx中logs/error.log日志,会发现 open() "/data/PRG/nginx-1.8.0/proxy_temp/1/44/0000000441" failed (13: Permission denied) while reading upstream, 这样一段异常。有人会问,我用的是root用户启动,为什么还是没有读写权限呢?其实只要看看目录/data/PRG/nginx-1.8.0/proxy_temp 的用户归属会发现,其实归属用户是  “nobody”。
解决办法:
根据以上的思路只要将 /data/PRG/nginx-1.8.0/proxy_temp 的归属用户设置为nginx启动用户即可。
(1)修改nginx.conf 文件,在 worker_processes 前面添加 user <启动用户>。例如



(注:如上也可以看出,nginx默认/data/PRG/nginx-1.8.0/proxy_temp归属是nobody)
(2)用步骤(1)中设置的user 通过命令 sudo nginx。(说明:用sudo的原因是在Linux中1024以下的端口号都需要root权限才能使用,所以普通用户启动程序绑定会报出权限问题)
(3)刷新浏览器,发现加载正常。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐