LogoMkSaaS文档

环境配置

为您的 MkSaaS 应用程序配置环境变量

MkSaaS 需要几个环境变量才能正常运行,本文档解释了如何设置它们。

在项目根目录创建一个 .env 文件,并且永远不要将其提交到版本控制

您可以复制 .env.example 文件作为起点:

cp env.example .env

环境变量

核心配置

变量描述
NEXT_PUBLIC_BASE_URL网站的 URL,例如
http://localhost:3000 用于开发环境 (本地开发),
https://yourdomain.com 用于生产环境 (线上部署)

数据库

数据库设置文档中学习如何设置数据库。

变量描述
DATABASE_URL数据库连接 URL

身份验证

身份验证设置文档中学习如何设置身份验证。

变量描述
BETTER_AUTH_SECRET用于哈希令牌和签名 Cookie 的随机字符串
GOOGLE_CLIENT_IDGoogle OAuth 客户端 ID(可选)
GOOGLE_CLIENT_SECRETGoogle OAuth 客户端密钥(可选)
GITHUB_CLIENT_IDGitHub OAuth 客户端 ID(可选)
GITHUB_CLIENT_SECRETGitHub OAuth 客户端密钥(可选)

邮件

邮件设置文档中学习如何设置邮件。

变量描述
RESEND_API_KEYResend 邮件服务的 API 密钥

邮件订阅

邮件订阅设置文档中学习如何设置邮件订阅。

变量描述
RESEND_API_KEYResend 邮件服务的 API 密钥
RESEND_AUDIENCE_IDResend 广播服务的受众 ID

存储

存储设置文档中学习如何设置存储。

变量描述
STORAGE_REGION存储桶的区域
STORAGE_BUCKET_NAME存储桶的名称
STORAGE_ACCESS_KEY_ID存储桶的访问密钥 ID
STORAGE_SECRET_ACCESS_KEY存储桶的秘密访问密钥
STORAGE_ENDPOINT存储桶的端点
STORAGE_PUBLIC_URL存储桶的公共 URL

支付

支付设置文档中学习如何设置支付。

变量描述
STRIPE_SECRET_KEYStripe 秘密密钥
STRIPE_WEBHOOK_SECRETStripe webhook 签名密钥
NEXT_PUBLIC_STRIPE_PRICE_PRO_MONTHLY专业版月度订阅的 Stripe 价格 ID
NEXT_PUBLIC_STRIPE_PRICE_PRO_YEARLY专业版年度订阅的 Stripe 价格 ID
NEXT_PUBLIC_STRIPE_PRICE_LIFETIME终身计划的 Stripe 价格 ID

积分

积分设置文档中学习如何设置积分。

变量描述
NEXT_PUBLIC_STRIPE_PRICE_CREDITS_BASIC基础积分包的 Stripe 价格 ID(可选)
NEXT_PUBLIC_STRIPE_PRICE_CREDITS_STANDARD标准积分包的 Stripe 价格 ID(可选)
NEXT_PUBLIC_STRIPE_PRICE_CREDITS_PREMIUM高级积分包的 Stripe 价格 ID(可选)
NEXT_PUBLIC_STRIPE_PRICE_CREDITS_ENTERPRISE企业积分包的 Stripe 价格 ID(可选)

定时任务

定时任务设置文档中学习如何设置定时任务。

变量描述
CRON_JOBS_USERNAME用于触发定时任务的 Basic 认证用户名
CRON_JOBS_PASSWORD用于触发定时任务的 Basic 认证密码

AI 功能

AI 设置文档中学习如何设置 AI 功能。

变量描述
OPENAI_API_KEYOpenAI API 密钥
GOOGLE_GENERATIVE_AI_API_KEYGoogle API 密钥
DEEPSEEK_API_KEYDeepSeek API 密钥

统计分析

统计分析设置文档中学习如何设置统计分析。

变量描述
GOOGLE_ANALYTICS_IDGoogle Analytics ID
UMAMI_WEBSITE_IDUmami Analytics 网站 ID
UMAMI_SCRIPTUmami Analytics 脚本 URL
OPENPANEL_CLIENT_IDOpenPanel Analytics 客户端 ID
PLAUSIBLE_DOMAINPlausible Analytics 域名
PLAUSIBLE_SCRIPTPlausible Analytics 脚本 URL
Seline_TOKENSeline Analytics 令牌
DATAFAST_ANALYTICS_IDDataFast Analytics ID
DATAFAST_ANALYTICS_DOMAINDataFast Analytics 域名

通知

通知设置文档中学习如何设置通知。

变量描述
DISCORD_WEBHOOK_URLDiscord Webhook URL
FEISHU_WEBHOOK_URL飞书 Webhook URL

验证码

验证码设置文档中学习如何设置验证码。

变量描述
NEXT_PUBLIC_TURNSTILE_SITE_KEYCloudflare Turnstile 站点密钥
TURNSTILE_SECRET_KEYCloudflare Turnstile 秘密密钥

聊天框

聊天框设置文档中学习如何设置聊天框。

变量描述
NEXT_PUBLIC_CRISP_WEBSITE_IDCrisp Chat ID 用于网站聊天功能

联盟营销

联盟营销设置文档中学习如何设置联盟营销。

变量描述
NEXT_PUBLIC_AFFILIATE_AFFONSO_IDAffonso 联盟 ID
NEXT_PUBLIC_AFFILIATE_PROMOTEKIT_IDPromotekit 联盟 ID

其他配置

.env 文件中还有一些其他配置可用,您可能需要根据需要设置它们。

变量描述
DISABLE_IMAGE_OPTIMIZATION禁用图像优化,如果您将网站部署到 Vercel,图像优化默认启用,可能会花费更多费用
NEXT_PUBLIC_DEMO_WEBSITE将此网站作为演示网站运行,我用这个来运行 MkSaaS 演示网站。在大多数情况下,您不应该设置这个环境变量,或者你可以显式将它设置为 false

验证环境变量

要验证环境变量是否正确设置,请运行:

pnpm run dev
npm run dev
yarn dev
bun run dev

如果一切配置正确,您的应用程序应该启动并正常运行,没有任何与环境相关的错误。

视频教程

下一步

现在您的环境已经设置好了,探索这些相关主题: