Files
ForbiddenStarsApp/frontend/vite.config.ts
T

32 lines
1.6 KiB
TypeScript

import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
// Dev: SPA на :5173 проксирует /api на бэкенд :8000 — пути одинаковы в dev и prod.
// Prod: dist отдаётся самим FastAPI (single-origin), прокси не нужен.
export default defineConfig({
plugins: [react()],
server: {
// Слушаем на всех интерфейсах (IPv4 + IPv6), чтобы и localhost, и 127.0.0.1
// работали без таймаута IPv4→IPv6 на Windows. Внимание: dev-сервер при этом
// доступен и из локальной сети (для разработки на своей машине это нормально).
host: true,
port: 5173,
// Разрешаем хост домена для режима LOCAL_PUBLIC=vps (dev виден на forbidden-stars.ru
// через SSH-туннель). localhost/127.0.0.1 vite пропускает по умолчанию.
// HMR через домен может не подключиться — это ок, само приложение работает.
allowedHosts: ["forbidden-stars.ru"],
proxy: {
"/api": {
// Явный IPv4: на Windows "localhost" может резолвиться в IPv6 ::1,
// куда uvicorn не слушает → задержка ~1 с на установку соединения.
target: "http://127.0.0.1:8000",
changeOrigin: true,
},
},
},
build: {
outDir: "dist",
sourcemap: false,
},
});