diff --git a/Dockerfile b/Dockerfile index f16952e..4e6df33 100644 --- a/Dockerfile +++ b/Dockerfile @@ -24,6 +24,8 @@ COPY . . # 在构建阶段也显式设置 DOCKER_ENV, # 确保 Next.js 在编译时即选择 Node Runtime 而不是 Edge Runtime +RUN find ./src -type f -name "route.ts" -print0 \ + | xargs -0 sed -i "s/export const runtime = 'edge';/export const runtime = 'nodejs';/g" ENV DOCKER_ENV=true # 生成生产构建 diff --git a/src/app/api/detail/route.ts b/src/app/api/detail/route.ts index 598114d..0668dbb 100644 --- a/src/app/api/detail/route.ts +++ b/src/app/api/detail/route.ts @@ -185,7 +185,7 @@ async function getVideoDetail( return getDetailFromApi(apiSite, id); } -export const runtime = process.env.DOCKER_ENV === 'true' ? 'nodejs' : 'edge'; +export const runtime = 'edge'; export async function GET(request: Request) { const { searchParams } = new URL(request.url); diff --git a/src/app/api/douban/route.ts b/src/app/api/douban/route.ts index 7ecb1d8..d6871bd 100644 --- a/src/app/api/douban/route.ts +++ b/src/app/api/douban/route.ts @@ -43,7 +43,7 @@ async function fetchDoubanData(url: string): Promise { } } -export const runtime = process.env.DOCKER_ENV === 'true' ? 'nodejs' : 'edge'; +export const runtime = 'edge'; export async function GET(request: Request) { const { searchParams } = new URL(request.url); diff --git a/src/app/api/login/route.ts b/src/app/api/login/route.ts index 5c67356..3b5d174 100644 --- a/src/app/api/login/route.ts +++ b/src/app/api/login/route.ts @@ -1,6 +1,6 @@ import { NextRequest, NextResponse } from 'next/server'; -export const runtime = process.env.DOCKER_ENV === 'true' ? 'nodejs' : 'edge'; +export const runtime = 'edge'; export async function POST(req: NextRequest) { try { diff --git a/src/app/api/playrecords/route.ts b/src/app/api/playrecords/route.ts index 481f735..70f1a23 100644 --- a/src/app/api/playrecords/route.ts +++ b/src/app/api/playrecords/route.ts @@ -5,7 +5,7 @@ import { NextRequest, NextResponse } from 'next/server'; import { db } from '@/lib/db'; import { PlayRecord } from '@/lib/db'; -export const runtime = process.env.DOCKER_ENV === 'true' ? 'nodejs' : 'edge'; +export const runtime = 'edge'; export async function GET() { try { diff --git a/src/app/api/search/route.ts b/src/app/api/search/route.ts index cdd0e7d..0b95918 100644 --- a/src/app/api/search/route.ts +++ b/src/app/api/search/route.ts @@ -4,7 +4,7 @@ import { API_CONFIG, ApiSite, getApiSites, getCacheTime } from '@/lib/config'; import { SearchResult } from '@/lib/types'; import { cleanHtmlTags } from '@/lib/utils'; -export const runtime = process.env.DOCKER_ENV === 'true' ? 'nodejs' : 'edge'; +export const runtime = 'edge'; // 根据环境变量决定最大搜索页数,默认 5 const MAX_SEARCH_PAGES: number =