nginx+vite 项目打包及部署(添加二级路由发生的错误)

た 入场券 2023-10-14 23:16 5阅读 0赞

错误信息

  1. _app.config.js:1 Uncaught SyntaxError: Unexpected token '<'
  2. daas/assets/index.edf40865.js:1 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.

原因

  • 由于nginx 配置错误所导致的二级路径无法解析

.env.production(生产环境配置文件)

  1. # 基础路径
  2. VITE_PUBLIC_PATH = /demo

vite.config.ts

  1. export default ({
  2. mode }: ConfigEnv): UserConfig => {
  3. // 获取 .env 环境配置文件
  4. const env = loadEnv(mode, process.cwd());
  5. return {
  6. // 基础路径
  7. base: env.VITE_BASE_PATH,
  8. ...
  9. }
  10. }

nginx 配置

  1. upstream 3.com {
  2. server 127.0.0.1:81;
  3. }
  4. server {
  5. listen 3000;
  6. server_name 3.com;
  7. # 监听demo路径
  8. location /demo {
  9. #指向资源的路径,alias为当前index.html的目录,在处理二级路由时,应当使用alias,而不是使用root
  10. alias /opt/d/demo;
  11. index index.html;
  12. # /demo/index.html; 这里需要添加 /demo,而不能直接写/index.html;
  13. try_files $uri $uri/ /demo/index.html;
  14. }
  15. error_page 500 502 503 504 /50x.html;
  16. location = /50x.html {
  17. root html;
  18. }
  19. }

发表评论

表情:
评论列表 (有 0 条评论,5人围观)

还没有评论,来说两句吧...

相关阅读