Skip to content

Commit

Permalink
Fix use of server actions with proxied domains by using middleware (#…
Browse files Browse the repository at this point in the history
  • Loading branch information
SamyPesse authored Mar 4, 2025
1 parent c66ef5d commit 701eaad
Showing 3 changed files with 6 additions and 12 deletions.
6 changes: 0 additions & 6 deletions packages/gitbook-v2/next.config.mjs
Original file line number Diff line number Diff line change
@@ -6,12 +6,6 @@
const nextConfig = {
experimental: {
useCache: true,
serverActions: {
// Allow all origins for server actions
// as we serve content on a lot of domains
// Server actions are secured by the middleware.
allowedOrigins: ['*', '*.*', '*.*.*', '*.*.*.*', '*.*.*.*.*'],
},
},

env: {
7 changes: 6 additions & 1 deletion packages/gitbook-v2/src/middleware.ts
Original file line number Diff line number Diff line change
@@ -77,6 +77,10 @@ async function serveSiteByURL(request: NextRequest, urlWithMode: URLWithMode) {
}
}

// Pass a x-forwarded-host and origin that are equal to ensure Next doesn't block server actions when proxied
requestHeaders.set('x-forwarded-host', request.nextUrl.host);
requestHeaders.set('origin', request.nextUrl.origin);

const route = [
'sites',
routeType,
@@ -87,7 +91,8 @@ async function serveSiteByURL(request: NextRequest, urlWithMode: URLWithMode) {

console.log(`rewriting to ${route}`);

const response = NextResponse.rewrite(new URL(`/${route}`, request.url), {
const rewrittenURL = new URL(`/${route}`, request.nextUrl.toString());
const response = NextResponse.rewrite(rewrittenURL, {
request: {
headers: requestHeaders,
},
5 changes: 0 additions & 5 deletions packages/gitbook/e2e/customers.spec.ts
Original file line number Diff line number Diff line change
@@ -225,11 +225,6 @@ const testCases: TestsCase[] = [
baseUrl: 'https://docs.raydium.io',
tests: [{ name: 'Home', url: '/' }],
},
{
name: 'docs.solv.finance',
baseUrl: 'https://docs.solv.finance',
tests: [{ name: 'Home', url: '/' }],
},
{
name: 'docs.fluentbit.io',
baseUrl: 'https://docs.fluentbit.io',

0 comments on commit 701eaad

Please sign in to comment.