28 lines
861 B
TypeScript
28 lines
861 B
TypeScript
import type { NextConfig } from "next"
|
|
import path from "path"
|
|
|
|
// The backend is proxied rather than called cross-origin. This makes /api/* same-origin,
|
|
// which means (a) no CORS config is needed on ERPCore, and (b) its Secure/SameSite=Strict
|
|
// session cookies just work. BACKEND_ORIGIN is server-side only — deliberately not
|
|
// NEXT_PUBLIC_*, since the browser only ever talks to this Next server.
|
|
//
|
|
// Defaults to the backend's HTTP port: the HTTPS port uses a self-signed dev cert that
|
|
// this proxy would reject.
|
|
const BACKEND_ORIGIN = process.env.BACKEND_ORIGIN ?? "http://localhost:5224"
|
|
|
|
const nextConfig: NextConfig = {
|
|
turbopack: {
|
|
root: path.join(__dirname),
|
|
},
|
|
async rewrites() {
|
|
return [
|
|
{
|
|
source: "/api/:path*",
|
|
destination: `${BACKEND_ORIGIN}/api/:path*`,
|
|
},
|
|
]
|
|
},
|
|
}
|
|
|
|
export default nextConfig
|