vue打包部署遇到的问题

网站上线中遇到的问题(跨域,404,空白页解决方案)

因为本人是后端开发工程师,对前端开发不了解,踩了很多坑,所以将踩过的坑分享出来,以供参考

网站地址:这里

这段时间将项目部署到服务器中引发了几个问题

第一个问题:跨域

一般跨域是由后端来解决的,但是由于项目中加入了追踪请求的日志,频繁options会使后台服务多一些无用的请求日志,所以使用nginx来做跨域

在对应的后端apilocation块儿中增加Access-Control-Allow-OriginAccess-Control-Allow-MethodsAccess-Control-Allow-CredentialsAccess-Control-Allow-Headers,然后判断请求方法为options则返回204状态码

第二个问题:404

将vue项目打包部署到服务器后访问网站,当点击某个页面,然后刷新此网页时会有404错误(图1和图2),解决方法还是修改nginx配置文件

图一:

图二:

我的nginx配置为:

关键点是try_files $uri $uri/ /index.html;,这段的意思是nginx服务器会先尝试在本地查找你请求的uri地址,若请求不到则交给vue的路由处理

第三个问题:空白页

不知道因为什么在vue.config.js的配置中加入了

在生产环境中打包后出现了这个问题:Uncaught SyntaxError: Unexpected token '<' (at chunk-vendors.f35dccd9.js:1:1)

通过https://blog.csdn.net/HeXinT/article/details/125082562找到了解决方案,将publicPath注释掉就可以解决掉这个问题了

相关推荐
40kuai6 小时前
Ingress nginx 公开TCP服务
nginx·ingress
smile_pbb7 小时前
nginx proxy_pass中斜杠问题
运维·nginx
阿征学IT11 小时前
vue 基础 组件通信1
vue
Crazy Struggle14 小时前
.NET 8.0 通用管理平台,支持模块化、WinForms 和 WPF
vue·wpf·winform·.net 8.0·通用权限管理
胡八一17 小时前
如何解决“无法在 ‘HTMLElement‘ 上设置 ‘innerText‘ 属性”的问题
linux·运维·vue·html
菜菜-plus17 小时前
Nginx、Gateway的区别
运维·nginx·gateway
三劫散仙17 小时前
vue3 + naive ui card header 和 title 冲突 bug
ui·vue·bug
十方天士19 小时前
VUE3中Element table表头动态展示合计信息(不是表尾合计)
前端·elementui·vue
qq_3775727719 小时前
组件间通信(组件间传递数据)
vue
清风絮柳1 天前
31.校园志愿者管理系统(基于springboot和vue的Java项目)
vue·毕业设计·springboot·java项目·校园志愿者·校园志愿者管理系统·志愿者