import { fileURLToPath } from 'url' import { defineConfig, loadEnv } from 'vite' import vue from '@vitejs/plugin-vue' // Vite 配置 export default defineConfig(({ mode }) => { // 加载环境变量 const env = loadEnv(mode, process.cwd(), '') return { plugins: [vue()], resolve: { alias: { '@': fileURLToPath(new URL('./src', import.meta.url)) } }, server: { port: 5173, proxy: { '/api': { // 本地开发模式:VITE_SERVER_URL 为空或本地地址时使用代理 target: env.VITE_SERVER_URL || `http://localhost:${env.VITE_API_PORT || '3000'}`, changeOrigin: true, // 仅远程部署时改变 origin configure: (proxy) => { if (env.VITE_SERVER_URL && !env.VITE_SERVER_URL.includes('localhost')) { proxy.on('proxyReq', (proxyReq) => { proxyReq.setHeader('origin', env.VITE_SERVER_URL) }) } } } } } } })