Http状态:net::ERR_INCOMPLETE_CHUNKED_ENCODING

一、问题描述:

今天前端的小伙伴遇到一个js文件加载报错:net::ERR_INCOMPLETE_CHUNKED_ENCODING,不论如何刷新页面始终只有该文件加载失败,Chrome开发者工具中响应内容显示此请求没有可用的响应数据。

二、原因调查

排除非前端发布问题,直接查看ngnix日志,发现有异常日志:

复制代码
2024/01/02 14:23:43 open() "/usr/local/nginx/proxy_temp/4/86/0000000864" failed (13: Permission denied) while reading upstream

首先,先了解一下有关ngnix 临时文件存储:

/usr/local/nginx/proxy_temp 是Nginx代理临时文件存储路径的默认位置。在 Nginx 服务器中,当使用代理模块时,会将代理的临时文件存储在这个proxy_temp目录中。这些临时文件通常是代理请求的响应内容,用于临时存储代理请求的数据。
proxy_temp_file_write_size是用于控制在向磁盘写入临时文件时的文件大小阈值。如果一个代理请求的响应内容超过了这个阈值,Nginx会将响应内容写入临时文件而不是存储在内存中。这有助于避免内存溢出,特别是在处理大型响应时。
因此,proxy_temp_file_write_size 和 /usr/local/nginx/proxy_temp目录都与代理请求的临时文件存储有关。proxy_temp_file_write_size控制着何时将响应内容写入临时文件,而/usr/local/nginx/proxy_temp 是实际存储这些临时文件的默认位置。

据上所述,open() "/usr/local/nginx/proxy_temp/4/86/0000000864" failed (13: Permission denied)的原因,应该就是/usr/local/nginx/proxy_temp目录过大或者没有写入权限。

如果确认目录权限没有问题,那么只要清空/usr/local/nginx/proxy_temp目录即可:

执行如下命令:

复制代码
rm -rf /usr/local/nginx/proxy_temp/*

最后刷新页面,已能正常加载该js文件:

相关推荐
91刘仁德1 小时前
HTTP协议详解:从URL到HTTP服务器的完整实战
服务器·网络·笔记·网络协议·http
可乐鸡翅yeah_3 小时前
hls.js 手动自定义 http 请求 loader,修改请求头实战
开发语言·前端·javascript·网络协议·http·ecmascript·m3u8在线
AIgorithmGEEK11 小时前
[Linux]HTTP 应用层协议全解(下篇)
linux·网络·网络协议·http·cookie·无连接·无状态
AIgorithmGEEK12 小时前
[Linux]HTTP 应用层协议全解(中篇)
linux·网络·网络协议·http
91刘仁德12 小时前
HTTPS 加密原理与 CA 数字证书:从对称加密到完整通信流程
网络·笔记·网络协议·http·https
勇往直前plus1 天前
HTTPS 详解
网络协议·http·https
wechatbot8881 天前
企业微信HTTP协议接口完整接入教程|全量消息收发 API 实战
网络协议·http·微信·企业微信·ai编程
web打印社区2 天前
Lodop 提示未安装或请升级:Chrome 里先分清该装哪套
开发语言·前端·javascript·chrome·websocket·http
吴声子夜歌2 天前
Nginx应用与运维——Nginx HTTP模块详解(数据处理功能模块)
运维·nginx·http
ysu_03142 天前
Postman接口调试实战指南-从HTTP请求到环境变量-Collection与自动化测试
网络·网络协议·测试工具·http·api·postman·可用性测试