/** @type {import('next').NextConfig} */ const nextConfig = { images: { qualities: [50, 75, 100], remotePatterns: [ { protocol: "https", hostname: "**", }, { protocol: "http", hostname: "**", } ], }, async headers() { return [ { source: '/(.*)', headers: [ { key: 'X-Content-Type-Options', value: 'nosniff', }, { key: 'X-Frame-Options', value: 'DENY', }, { key: 'Referrer-Policy', value: 'strict-origin-when-cross-origin', }, ], }, { source: '/sw.js', headers: [ { key: 'Content-Type', value: 'application/javascript; charset=utf-8', }, { key: 'Cache-Control', value: 'no-cache, no-store, must-revalidate', }, { key: 'Content-Security-Policy', value: "default-src 'self'; script-src 'self'", }, ], }, ]; }, async rewrites() { return [ { source: '/ingest/static/:path*', destination: 'https://us-assets.i.posthog.com/static/:path*', }, { source: '/ingest/:path*', destination: 'https://us.i.posthog.com/:path*', }, { source: '/ingest/decide', destination: 'https://us.i.posthog.com/decide', }, ]; }, // This is required to support PostHog trailing slash API requests skipTrailingSlashRedirect: true, }; export default nextConfig;