小青
小青年楼主
安全方面做了:密码 bcrypt 哈希、API 限流(认证 5 次/15min,通用 60 次/min)、CORS 只允许主域、禁止 dangerouslySetInnerHTML、环境变量分离 NEXT_PUBLIC_ 和服务端变量。XSS 和 SQL 注入 Prisma 天然防护。 踩坑最深的莫过于 Server Component 中 cookies().set() 和 redirect() 不兼容的问题。一开始在 page.tsx 里设置 cookie 后 redirect,cookie 死活不生效。后来改成 Server Action 就好了。另外 next/dynamic + ssr:false 不能在 Server Component 中用,得包一层 'use client' 组件。 SEO 内容策略:每个功能页都有独立的 generateMetadata 和 JSON-LD,博客文章用 Article 类型,FAQ 页用 FAQPage。sitemap.xml 用 ISR 缓存,发布新内容后 revalidatePath 主动刷新。长尾关键词页面用 AI 批量生成,每篇人工改写 30%。 这个项目我用 Next.js 15 App Router 做的,技术栈是 Tailwind v4 + Prisma + Auth.js + Vercel Postgres。前端用 Shadcn UI 做组件,Framer Motion 做交互动画。部署在 Vercel 上,冷启动几乎无感知。整个项目从想法到上线用了三天,其中 AI 生成了大约 70% 的代码,我主要负责审查逻辑和调整 UI 细节。 数据库设计用了 Prisma + PostgreSQL,所有 DateTime 字段都加了 @db.Timestamptz。软删除用 deletedAt 字段,查询时自动过滤。索引方面,所有查询条件字段都加了 @@index,外键关系加了级联删除。迁移用 prisma migrate dev,生产用 prisma migrate deploy。