import { defineConfig, type ProxyOptions } from "vite"; import react from "@vitejs/plugin-react"; const proxy = { // Live API -> gateway "/api": { target: "http://127.0.0.1:8888", changeOrigin: true, configure: (gateway) => { // Browser -> Vite is same-origin. Do not forward that Origin to the // private gateway, where it would be mistaken for a direct CORS call. gateway.on("proxyReq", (request) => request.removeHeader("origin")); }, }, // 頭像等公開物件(MinIO path-style)。nginx 未轉 /haixun-assets 時, // 流量會落到 Vite;由此代轉,避免回 SPA HTML。 "/haixun-assets": { target: "http://127.0.0.1:9000", changeOrigin: true, }, } satisfies Record; // https://vite.dev/config/ export default defineConfig({ plugins: [react()], server: { host: "0.0.0.0", port: 5173, strictPort: false, allowedHosts: ["threads-tool-dev.30cm.net", ".30cm.net"], proxy, }, preview: { host: "0.0.0.0", port: 4173, allowedHosts: ["threads-tool-dev.30cm.net", ".30cm.net"], proxy, }, });