Next.js 13生产环境加载webpack.js与main-app.js失败求助
Next.js 13部署后静态资源404的常见原因
- 静态资源路径配置不对:如果你的应用部署在网站子路径下(比如
https://xxx.com/my-app),得在next.config.js里设置basePath: '/my-app',不然浏览器会从根目录请求/_next/开头的静态资源,自然找不到。 - 部署时静态文件没传全:检查服务器上的
.next/static目录是不是和本地构建后的完整一致,要是部署过程中断或者漏传了,就重新构建生产包(npm run build),再把.next和public目录完整传到服务器。 - 服务器路由规则配错了:比如用Nginx部署的话,得确保
/_next/开头的请求能正确指向静态资源或者转发给Next.js服务,举个简单的配置片段:
location /_next/ { alias /你的应用目录/.next/; expires 30d; access_log off; }
- 用了开发环境的构建包部署:别直接把
npm run dev生成的产物传到服务器,必须先跑npm run build生成生产环境构建包,再用npm run start启动服务。 - CDN或浏览器缓存搞的鬼:如果用了CDN加速静态资源,可能缓存了旧的无效路径,清一下CDN缓存或者浏览器的本地缓存再试试。
内容的提问来源于stack exchange,提问作者vahid
相关产品推荐
相关产品推荐

