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, }, });