You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Next.js项目部署Vercel时Clerk中间件密钥缺失错误排查

Next.js部署Vercel时Clerk密钥缺失错误排查

问题

将Next.js项目部署到Vercel时触发500错误,提示缺少Clerk密钥,但本地已按要求配置所需密钥,且之前部署未出现该问题。

错误日志

[GET] [middleware: "middleware"] / reason=EDGE_FUNCTION_INVOCATION_FAILED, status=500, user_error=true
Error: Missing Clerk Secret Key or API Key. Go to https://dashboard.clerk.com and get your key for your instance.
at (node_modules/@clerk/backend/dist/esm/index.js:697:10)
at (node_modules/@clerk/backend/dist/esm/index.js:2767:2)
at (node_modules/@clerk/backend/dist/esm/index.js:2874:11)
at (node_modules/@clerk/nextjs/dist/esm/server/authenticateRequest.js:16:27)
at (node_modules/@clerk/nextjs/dist/esm/server/authMiddleware.js:64:31)
at (node_modules/next/dist/esm/server/web/adapter.js:157:15)

相关配置文件

Middleware代码(middleware.js)

import { authMiddleware } from "@clerk/nextjs";
export default authMiddleware({
  publicRoutes: ["/","/board"],
});
 
export const config = {
  matcher: ["/((?!.+\\.[\\w]+$|_next).*)", "/", "/(api|trpc)(.*)"],
};

环境变量配置(.env)

NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=pk_test_blablabblablablablablablablabla
CLERK_SECRET_KEY=sk_test_blablablablablablablablblablabla
NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up
NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=/
NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=/

可能的原因及解决方法

  • Vercel环境变量未同步:本地修改.env后,未在Vercel控制台更新对应环境变量,或未触发重新部署使新变量生效。进入Vercel项目的「Settings」→「Environment Variables」,检查变量是否存在且值正确,之后重新部署项目。
  • 变量名拼写错误:确认Vercel中的环境变量名是CLERK_SECRET_KEY,注意大小写和下划线,避免出现拼写错误(比如写成CLERK_SECRETKEY或clerk_secret_key)。
  • 环境变量作用域不匹配:Vercel的环境变量分生产、预览、开发三个环境,若部署的是生产环境,需确保生产环境下已配置CLERK_SECRET_KEY,而非仅在开发环境中配置。
  • 边缘函数缓存旧配置:Vercel的边缘函数可能缓存了旧的环境变量,重新部署时勾选「Clear build cache」选项,强制加载最新配置。
  • Clerk密钥失效:登录Clerk后台查看当前密钥是否有效,若密钥被重置或过期,重新生成密钥并更新Vercel中的环境变量。

内容的提问来源于stack exchange,提问作者Neslihan Atasever

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 14:58:11