Nginx代理访问提示ERR_CONTENT_LENGTH_MISMATCH异常的解决方案


Nginx做反向代理,后端是Tomcat,通过浏览器访问时部分文件加载失败,提示:

ERR_CONTENT_LENGTH_MISMATCH

QQ截图20160229111332

经检查原来是Nginx的工作进程对大文件做了缓存,这个缓存在 %nginx%/proxy_temp 目录下,主进程在读取缓存的时候由于权限问题而无法访问,从而导致以上异常。

1、查看Nginx运行进程,确认运行用户为“tomcat”;

ps –ef|grep nginx

2、检查proxy_temp目录所属用户,nginx 默认的工作者用户就是nobody;

ll proxy_temp

3、停止nginx并将nginx目录权限设置为“tomcat”用户;

./nginx -s stop

chown -R tomcat:tomcat nginx

4、修改%nginx%/conf/nginx.conf配置,在worker_processes 前添加:user tomcat

5、重启nginx即可。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM