Nginx 做代理服务器时浏览器加载大文件失败 ERR_CONTENT_LENGTH_MISMATCH 的解决方案
2017-09-14 09:27
751 查看
Nginx 做反向代理,后端是 tomcat,chrome 浏览器访问项目时加载大文件失败 ERR_CONTENT_LENGTH_MISMATCH:
查看 linux 日志:
2015/05/27 02:19:10 [crit] 29263#0: *72 open() "/usr/local/nginx/proxy_temp/3/00/0000000003" failed (13: Permission denied) while reading upstream, client: 192.168.1.30, server:
localhost, request: "GET /项目名/frame/js/jquery-1.10.1.min.js HTTP/1.1", upstream: "http://192.168.1.177:8080/项目名/frame/js/jquery-1.10.1.min.js", host: "192.168.1.177", referrer: "https://192.168.1.177/项目名/"
2015/05/27 02:19:10 [crit] 29263#0: *77 open() "/usr/local/nginx/proxy_temp/4/00/0000000004" failed (13: Permission denied) while reading upstream, client: 192.168.1.30, server:
localhost, request: "GET /项目名/frame/image/DAimG_2013040242192849XA16.jpg HTTP/1.1", upstream: "http://192.168.1.177:8080/项目名/frame/image/DAimG_2013040242192849XA16.jpg", host: "192.168.1.177", referrer: "https://192.168.1.177/项目名/"
原来是 nginx 的工作进程对大文件做了缓存,这个缓存在 %nginx%/proxy_temp 目录下,主进程在读取缓存的时候由于权限问题而无法访问。ps nginx 可以看出主进程用户是 webapp(启动 nginx 的用户),工作者进程是 nobody 用户(nginx 默认的工作者用户就是 nobody,如果你没有配 user 指令的话),proxy_temp 目录所有者就是工作者进程的用户(可以 ll
proxy_temp 对此进行验证)。
停止 nginx(nginx -s stop),chown -R 对 nginx 所有目录权限重新设定成 webapp,然后在 nginx.conf 的 worker_processes 指令前添加指令
user webapp;
最后 webapp 用户重启 nginx 即可。
参考资料
ERR_CONTENT_LENGTH_MISMATCH on nginx
and proxy on Chrome when loading large files
ngx_core_module, user directive
原文地址:http://blog.csdn.net/defonds/article/details/46042809
查看 linux 日志:
2015/05/27 02:19:10 [crit] 29263#0: *72 open() "/usr/local/nginx/proxy_temp/3/00/0000000003" failed (13: Permission denied) while reading upstream, client: 192.168.1.30, server:
localhost, request: "GET /项目名/frame/js/jquery-1.10.1.min.js HTTP/1.1", upstream: "http://192.168.1.177:8080/项目名/frame/js/jquery-1.10.1.min.js", host: "192.168.1.177", referrer: "https://192.168.1.177/项目名/"
2015/05/27 02:19:10 [crit] 29263#0: *77 open() "/usr/local/nginx/proxy_temp/4/00/0000000004" failed (13: Permission denied) while reading upstream, client: 192.168.1.30, server:
localhost, request: "GET /项目名/frame/image/DAimG_2013040242192849XA16.jpg HTTP/1.1", upstream: "http://192.168.1.177:8080/项目名/frame/image/DAimG_2013040242192849XA16.jpg", host: "192.168.1.177", referrer: "https://192.168.1.177/项目名/"
原来是 nginx 的工作进程对大文件做了缓存,这个缓存在 %nginx%/proxy_temp 目录下,主进程在读取缓存的时候由于权限问题而无法访问。ps nginx 可以看出主进程用户是 webapp(启动 nginx 的用户),工作者进程是 nobody 用户(nginx 默认的工作者用户就是 nobody,如果你没有配 user 指令的话),proxy_temp 目录所有者就是工作者进程的用户(可以 ll
proxy_temp 对此进行验证)。
停止 nginx(nginx -s stop),chown -R 对 nginx 所有目录权限重新设定成 webapp,然后在 nginx.conf 的 worker_processes 指令前添加指令
user webapp;
最后 webapp 用户重启 nginx 即可。
参考资料
ERR_CONTENT_LENGTH_MISMATCH on nginx
and proxy on Chrome when loading large files
ngx_core_module, user directive
原文地址:http://blog.csdn.net/defonds/article/details/46042809
相关文章推荐
- Nginx 做代理服务器时浏览器加载大文件失败 ERR_CONTENT_LENGTH_MISMATCH 的解决方案
- Nginx 做代理服务器时浏览器加载大文件失败 ERR_CONTENT_LENGTH_MISMATCH 的解决方案
- Nginx 做代理服务器时浏览器加载大文件失败 ERR_CONTENT_LENGTH_MISMATCH 的解决方案
- Nginx 做代理服务器时浏览器加载大文件失败 ERR_CONTENT_LENGTH_MISMATCH 的解决方案
- Nginx 做代理服务器时浏览器加载大文件失败 ERR_CONTENT_LENGTH_MISMATCH 的解决方案
- nginx 配置后网站图片或js 加载出来一半或者不出来刷新才可以,chrome 浏览器访问项目时加载大文件失败 ERR_CONTENT_LENGTH_MISMATCH:
- Nginx 作为代理服务器,加载JS文件报错,net::ERR_CONTENT_LENGTH_MISMATCH
- nginx反向代理tomcat访问时浏览器加载失败,出现 ERR_CONTENT_LENGTH_MISMATCH 问题
- Nginx 配置不当造成加载静态资源件提示ERR_CONTENT_LENGTH_MISMATCH解决方法
- Nginx代理访问提示ERR_CONTENT_LENGTH_MISMATCH异常的解决方案
- 通过Nginx访问后端应用,ERR_CONTENT_LENGTH_MISMATCH 问题的解决
- 通过Nginx访问后端应用,ERR_CONTENT_LENGTH_MISMATCH 问题的解决
- 通过Nginx访问后端应用,报错ERR_CONTENT_LENGTH_MISMATCH
- 突然访问页面net::ERR_CONTENT_LENGTH_MISMATCH错误,nginx配置无错
- [ nginx ] 代理后端tomcat 无法显示图片报错:ERR_CONTENT_LENGTH_MISMATCH
- Nginx访问后端应用,net::ERR_CONTENT_LENGTH_MISMATCH问题的解决
- ngnix加载tomcat项目,出现,net::ERR_CONTENT_LENGTH_MISMATCH
- java访问提示“”ERR_CONTENT_LENGTH_MISMATCH“”
- ERR_CONTENT_LENGTH_MISMATCH 问题的解决 手记
- 关于页面ERR_CONTENT_LENGTH_MISMATCH 解决办法