首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >代理api在Vite + Vue 3项目中部署到Vercel时不起作用

代理api在Vite + Vue 3项目中部署到Vercel时不起作用
EN

Stack Overflow用户
提问于 2022-08-07 13:40:45
回答 1查看 502关注 0票数 1

我对Vite+Vue3项目有个问题。

我使用Vite代理通过api获取数据,它在本地运行良好。

但是当部署到Vercel.com时会导致404错误。

Vite配置是这样的。

代码语言:javascript
运行
复制
// vite.config.ts
server: {
  port: 4000,
  proxy: {
    // 选项写法
    '/api': {
      target: 'http://xxx.xxx.xxx.xxx:9998',
      changeOrigin: true,
      rewrite: path => path.replace(/^\/api/, '')
    }
  },
  hmr: {
    overlay: false
  },
  host: '0.0.0.0'
},

Vercel错误

我使用了这个模板:https://github.com/kailong321200875/vue-element-plus-admin

它被部署到http://his-lemon.vercel.app/

此错误与Vite 2和Vite 3中的错误相同。

我怎么才能解决这个问题?

EN

Stack Overflow用户

发布于 2022-09-23 06:24:45

您需要在服务器端指定URL重写。对于Vercel,可以将vercel.json文件添加到项目的根目录中。

代码语言:javascript
运行
复制
{
    "rewrites": [
        { "source": "/api/:path(.*)", "destination": "http://xxx.xxx.xxx.xxx:9998/:path" },
        { "source": "/(.*)", "destination": "/index.html" }
    ]
}

如果部署到Netlify,则应该在公用文件夹th中提供一个_redirects文件,如下所示

代码语言:javascript
运行
复制
/api*  http://xxx.xxx.xxx.xxx:9998/:splat  200
/* /index.html 200
票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73267938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档