diff --git a/.env.production b/.env.production new file mode 100644 index 00000000..ef983024 --- /dev/null +++ b/.env.production @@ -0,0 +1,42 @@ +# ======================================== +# 生产环境配置 +# ======================================== +# 使用方式: npm run build +# +# 工作原理: +# 1. 此文件专门用于生产环境构建 +# 2. 构建时会将环境变量嵌入到打包文件中 +# 3. 确保 PostHog 等服务使用正确的生产配置 +# ======================================== + +# 环境标识 +REACT_APP_ENV=production +NODE_ENV=production + +# Mock 配置(生产环境禁用 Mock) +REACT_APP_ENABLE_MOCK=false + +# 后端 API 地址(生产环境) +REACT_APP_API_URL=http://49.232.185.254:5001 + +# PostHog 分析配置(生产环境) +# PostHog API Key(从 PostHog 项目设置中获取) +REACT_APP_POSTHOG_KEY=phc_xKlRyG69Bx7hgOdFeCeLUvQWvSjw18ZKFgCwCeYezWF +# PostHog API Host(使用 PostHog Cloud) +REACT_APP_POSTHOG_HOST=https://app.posthog.com +# 启用会话录制(Session Recording)用于回放用户操作、排查问题 +REACT_APP_ENABLE_SESSION_RECORDING=true + +# React 构建优化配置 +# 禁用 source map 生成(生产环境不需要,提升打包速度和安全性) +GENERATE_SOURCEMAP=false +# 跳过预检查(加快启动速度) +SKIP_PREFLIGHT_CHECK=true +# 禁用 ESLint 检查(生产构建时不需要) +DISABLE_ESLINT_PLUGIN=true +# TypeScript 编译错误时继续 +TSC_COMPILE_ON_ERROR=true +# 图片内联大小限制 +IMAGE_INLINE_SIZE_LIMIT=10000 +# Node.js 内存限制(适用于大型项目) +NODE_OPTIONS=--max_old_space_size=4096 diff --git a/package.json b/package.json index d783c618..a3600c3f 100755 --- a/package.json +++ b/package.json @@ -101,7 +101,7 @@ "frontend:test": "NODE_OPTIONS='--openssl-legacy-provider --max_old_space_size=4096' env-cmd -f .env.test craco start", "dev": "npm start", "backend": "python app_2.py", - "build": "NODE_OPTIONS='--openssl-legacy-provider --max_old_space_size=4096' craco build && gulp licenses", + "build": "NODE_OPTIONS='--openssl-legacy-provider --max_old_space_size=4096' env-cmd -f .env.production craco build && gulp licenses", "build:analyze": "NODE_OPTIONS='--openssl-legacy-provider --max_old_space_size=4096' ANALYZE=true craco build", "test": "craco test --env=jsdom", "eject": "react-scripts eject",