Failed to load resource: net::ERR_INCOMPLETE_CHUNKED_ENCODING问题
先说解决办法:
方法一:直接删除Nginx缓存文件即可;
方法二:更改权限。
问题描述:
使用Nginx代理的服务,一直使用正常,突然昨天就访问不了了;通过IP访问和端口能正常访问。
原本以为是请求头文件过大导致资源未加载完问题;然后修改了Tomcat中配置中的请求头文件,
在Tomcat的conf中把server.xml中增加maxHttpHeaderSize的字段或者是把maxHttpHeaderSize的数值调大,如下:
修改后依然无效,浏览器中还是报如下错误:
以上问题原因:
当代理文件大小超过配置的proxy_temp_file_write_size值时,nginx会将文件写入到临时目录下(默认为/proxy_temp)。
如果nginx中/proxy_temp过大或者没有权限,就写不进去。
解决一:
直接删除Nginx缓存文件,应该就可以访问了:# rm -rf /usr/local/nginx/proxy_temp
防止缓存文件过多,设置Nginx的缓存过期时间,如下:# vim /usr/local/nginx/conf/nginx.conf
server
{
listen 80;
server_name mjj.jybb.me; #主机名
location / {
proxy_cache cache_one;
proxy_cache_valid 200 304 3d; #正常状态缓存时间3天,按实际情况修改
proxy_cache_key $host$uri$is_args$args;
proxy_pass http://www.baidu.com/; #反代的网站
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
expires 10d; #默认10天缓存
access_log /home/logs/mjj.log access; #日志文件,不开启日志请改为access_log off;
}
}
重启一下nginx,访问一下网站。
解决二:
调整/proxy_temp权限为配置nginx的那个用户:
chown -R www:www /usr/local/nginx/proxy_temp
PS:一开始Chrome,我就一股脑的根据Chrome提示的错误去查找资料去调试;因为应该先把相关的容器的错误日志都查看一遍,看看问题出在哪里然后再去对症下药这样子才能事半功倍。个人问题总结,期望对大家有帮助。