Files
2025-07-07 14:18:30 +08:00

50 lines
1.3 KiB
JavaScript

import { fileURLToPath, URL } from 'node:url'
import fs from 'fs'
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueDevTools from 'vite-plugin-vue-devtools'
// https://vite.dev/config/
export default defineConfig({
plugins: [vue(), vueDevTools()],
resolve: {
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url)),
},
},
css: {
postcss: './postcss.config.js',
},
server: {
host: '0.0.0.0',
port: 5173,
https: {
key: fs.readFileSync('./backend/key.pem'),
cert: fs.readFileSync('./backend/cert.pem'),
},
// Allow self-signed certificates in development
proxy: process.env.VITE_ALLOW_SELF_SIGNED === 'true' ? {
'/api': {
target: process.env.VITE_API_BASE_URL,
changeOrigin: true,
secure: false, // Allow self-signed certificates
configure: (proxy) => {
proxy.on('error', (err) => {
console.log('Proxy error:', err)
})
proxy.on('proxyReq', (proxyReq, req) => {
console.log('Sending Request to the Target:', req.method, req.url)
})
proxy.on('proxyRes', (proxyRes, req) => {
console.log('Received Response from the Target:', proxyRes.statusCode, req.url)
})
},
}
} : undefined
},
build: {
}
})