环境变量配置
在 NuxtPro 项目中,我们使用环境变量来管理敏感信息和不同部署环境(如开发、测试、生产)下的配置。这种做法可以避免将 API 密钥、数据库凭证等硬编码到代码中,从而提高项目的安全性。
.env
文件
项目配置的核心是根目录下的 .env
文件。该文件不应该被提交到版本控制系统(例如 Git)中。我们提供了一个 .env.example
文件作为模板,您可以复制并重命名为 .env
来开始配置。
bash
cp .env.example .env
接下来,您需要根据您的实际情况填写 .env
文件中的变量。
通用变量
这些是项目运行所必需的基础变量。
NUXT_PUBLIC_APP_URL
- 说明: 您的应用部署后对外访问的公开 URL。
- 用途: 用于生成绝对链接、站点地图(sitemap)以及 SEO 相关的 meta 标签。
- 示例:
NUXT_PUBLIC_APP_URL=https://myapp.com
数据库变量
NuxtPro 使用 Prisma 作为 ORM,可以与多种数据库配合使用。
DATABASE_URL
- 说明: 您的数据库连接字符串。
- 用途: Prisma 使用此 URL 来连接到您的数据库,进行数据迁移和查询。
- 格式:
postgresql://USER:PASSWORD@HOST:PORT/DATABASE
- 示例:
DATABASE_URL="postgresql://postgres:password@localhost:5432/nuxtpro?schema=public"
支付网关变量 (Stripe)
如果您计划使用支付功能,则需要配置 Stripe 相关的环境变量。
NUXT_PUBLIC_STRIPE_PUBLISHABLE_KEY
- 说明: Stripe 的可发布密钥(Publishable Key)。
- 用途: 用于在前端与 Stripe API 进行安全通信。
- 示例:
NUXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_test_xxxxxxxxxxxx
STRIPE_SECRET_KEY
- 说明: Stripe 的秘密密钥(Secret Key)。
- 用途: 用于在后端服务器上处理支付、订阅等敏感操作。切勿泄露此密钥。
- 示例:
STRIPE_SECRET_KEY=sk_test_xxxxxxxxxxxx
STRIPE_WEBHOOK_SECRET
- 说明: Stripe Webhook 的签名密钥。
- 用途: 用于验证从 Stripe 发送到您服务器的 Webhook 事件的真实性,防止伪造请求。
- 示例:
STRIPE_WEBHOOK_SECRET=whsec_xxxxxxxxxxxx
邮件服务变量 (Resend)
用于发送交易邮件,如欢迎邮件、密码重置邮件等。
RESEND_API_KEY
- 说明: Resend 服务的 API 密钥。
- 用途: 用于通过 Resend API 发送邮件。
- 示例:
RESEND_API_KEY=re_xxxxxxxxxxxx
配置完所有必要的环境变量后,请重启您的开发服务器以使更改生效。正确的环境变量配置是 NuxtPro 应用成功运行的关键一步。