Docker+NGINX+SvelteKit部署报错net::ERR_INCOMPLETE_CHUNKED_ENCODING求助
生产环境SvelteKit页面加载报错
net::ERR_INCOMPLETE_CHUNKED_ENCODING排查 问题现象
在Debian GNU/Linux 11 (bullseye)服务器上,基于Docker、Docker Compose、NGINX、Node.js、SvelteKit、PM2部署项目时,生产环境加载简单登录页面出现错误:net::ERR_INCOMPLETE_CHUNKED_ENCODING 200 (OK),但通过curl命令请求该页面,终端能正常显示返回内容。
测试对比
曾搭建测试仓库并成功运行,将相同配置直接应用到实际项目后出现上述问题。
已尝试的解决方案
- 在NGINX的
default.conf文件的location /指令中添加多项配置,调整proxy_read_timeout、proxy_buffering、proxy_buffers等参数 - 检查容器内
/var/cache/nginx和/etc/nginx目录的所有者与用户组权限 - 修改
nginx.conf,将默认运行用户从nginx改为root - 开启
nginx.conf中的gzip压缩功能 - 检查容器内存使用、响应内容大小及服务器磁盘空间,确认资源充足
- 将NGINX容器内存限制提升至10240M
未尝试的方向
尚未修改NGINX的proxy_temp_path缓存目录,不确定正确的路径指向。
补充说明
涉及的配置文件包括:default.conf、nginx.conf、Dockerfile、docker-compose.yml、package.json;项目未使用SvelteKit v1稳定版,因项目启动早于正式版发布,暂无时间适配大版本变更。
更新:最终解决办法
问题根源并非NGINX配置错误,而是manifest.json中的一个路由使用了错误的$lib语法,将其改为完整路径后,页面加载恢复正常。
内容的提问来源于stack exchange,提问作者Natascha Gamboa
相关产品推荐
相关产品推荐

