314 字
2 分钟
vite部署到nginx的一些常见问题

路由问题
vue router运行在hash模式下,会有/#/,觉得很丑,然后就运行在了history模式下,但是,这么模式下需要注意一些问题:
如果你没有在nginx里配置好的话,就会导致刷新页面404。
所以,需要在nginx里配置好try_files:
location / { try_files $uri $uri/ /index.html;}api代理问题
相信大家在使用vite的过程中为了隐藏后端真实网址使用过vite的代理服务器吧,类似于这种
proxy: { '/api': { target: 'http://localhost:port/', changeOrigin: true }}我当时认为,只要在vite里配置好代理就不需要操心了,我在main.js里配置了一些init方法,如果init报错就不创建App。其次,我也配置了上文提到的try_files,所以这就导致了看不到任何的404报错,最后去除掉try_files才定位到问题。
所以,即使在vite里配置好代理,也仅限于开发的情况下有效,在项目上线时仍然要在nginx里配置代理:
location /api/ { proxy_pass http://localhost:port/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme;}nginx会把/api/给删除,所以需要注意一下你的后端配置。 这下就可以正常访问后端接口了
vite部署到nginx的一些常见问题
https://blog.zhenxuna.cn/post/8/分享文章
生成精美分享图或复制链接,与更多人分享本文。
继续浏览
换条路线
从其他文章中稳定抽取
最后更新于 ,距今已过 4 天
部分内容可能已过时