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文件:

相关推荐
00后程序员张3 小时前
iPhone相册导出到电脑的完整指南
websocket·网络协议·tcp/ip·http·网络安全·https·udp
August_._5 小时前
【JavaWeb】详细讲解 HTTP 协议
java·网络·网络协议·http
wordbaby10 小时前
Vue 图片重试指令 (v-img-retry) 增强:集成 visibility 控制,实现无缝加载过渡
前端·vue.js·http
秋‍.13 小时前
HTTP与HTTPS的区别
网络协议·http·https
耕耘虫20 小时前
解决 .Net 6.0 项目发布到IIS报错:HTTP Error 500.30
网络·网络协议·http·iis·net·静态文件·.net 6.0
2501_915106321 天前
iOS 设备应用管理实践分享
websocket·网络协议·tcp/ip·http·网络安全·https·udp
2501_915106321 天前
flutter 真机调试 ios
websocket·网络协议·tcp/ip·http·网络安全·https·udp
晓13131 天前
第三章 爬虫提速、selenium模块、requests模块进阶(终)
爬虫·python·selenium·测试工具·http
00后程序员张1 天前
Flutter的自动化测试 python flutter编程
websocket·网络协议·tcp/ip·http·网络安全·https·udp
00后程序员张1 天前
Flutter 从零到一
websocket·网络协议·tcp/ip·http·网络安全·https·udp