Hello! 欢迎来到小浪资源网!

Vite项目部署到Nginx非根路径刷新报错:如何解决Failed to load module script?


Vite项目部署到Nginx非根路径刷新报错:如何解决Failed to load module script?

failed to load module script:如何解决vite项目部署到nginx后非根路径刷新报错

在打包vite项目后,部署到nginx服务器上会出现这样一个报错:

failed to load module script: expected a javascript module script but the server responded with a mime type of "text/html". strict mime type checking is enforced for module scripts per html spec.

如果访问根路径(如app.xxxx.cn)没有问题,而在非根路径(如https://app.xxx.cn/me/userinfo)刷新页面时出现此错误,可以从以下几个方面排查原因:

1. 检查base配置

在vite配置文件中,确保base配置正确,例如:

export default defineconfig({   base: './',   minify: true });

编译后的index.html中引入脚本的src应该是以./开头的。

2. 检查发布是否成功

确认是否已成功将项目发布到nginx服务器上。

3. 配置nginx rewrite

如果链接中不包含#,需要配置nginx的rewriteルール,例如:

location / {   try_files $uri $uri/ /index.html; }

4. 使用#号链接

如果链接使用#号的格式,结尾应该是/#/或/index.html#/。

相关阅读