diff --git a/ecosystem.config.cjs b/ecosystem.config.cjs index f0d566a..9244d1f 100644 --- a/ecosystem.config.cjs +++ b/ecosystem.config.cjs @@ -38,12 +38,10 @@ module.exports = { env: { NODE_ENV: "production", PORT: "3801", - - // Laravel 根地址(无尾部 /);同机部署填 http://127.0.0.1:8000 - LOTTERY_API_UPSTREAM: "http://127.0.0.1:8000", }, - // env_file: path.join(APP_CWD, ".env"), + // LOTTERY_API_UPSTREAM 只写在 .env,勿在此硬编码(会覆盖 .env 导致 API 502) + env_file: path.join(APP_CWD, ".env"), }, ], }; diff --git a/public/illustration.png b/public/illustration.png new file mode 100644 index 0000000..ffc5923 Binary files /dev/null and b/public/illustration.png differ diff --git a/src/app/admin/(shell)/layout.tsx b/src/app/admin/(shell)/layout.tsx index 15f3e8e..73d3d8a 100644 --- a/src/app/admin/(shell)/layout.tsx +++ b/src/app/admin/(shell)/layout.tsx @@ -7,8 +7,8 @@ export default function AdminShellLayout({ children: React.ReactNode; }) { return ( - - {children} - + + {children} + ); } diff --git a/src/app/admin/(shell)/page.tsx b/src/app/admin/(shell)/page.tsx index c9aecc1..8ba82bc 100644 --- a/src/app/admin/(shell)/page.tsx +++ b/src/app/admin/(shell)/page.tsx @@ -9,7 +9,7 @@ export const metadata: Metadata = buildPageMetadata("dashboard", "title"); export default function AdminDashboardPage() { return ( - + diff --git a/src/app/admin/login/layout.tsx b/src/app/admin/login/layout.tsx new file mode 100644 index 0000000..c6fd3b0 --- /dev/null +++ b/src/app/admin/login/layout.tsx @@ -0,0 +1,8 @@ +/** 登录页锁定一屏高度,避免整页随内容滚动 */ +export default function AdminLoginLayout({ + children, +}: Readonly<{ + children: React.ReactNode; +}>) { + return
{children}
; +} diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 3dd32c2..cf48607 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -1,5 +1,6 @@ import type { Metadata } from "next"; import { Geist, Geist_Mono } from "next/font/google"; +import Script from "next/script"; import { Providers } from "@/components/providers"; import "./globals.css"; @@ -37,7 +38,9 @@ export default function RootLayout({ className={`${geistSans.variable} ${geistMono.variable} h-full antialiased`} > -