feat(analytics): enhance Google Analytics with privacy compliance and comprehensive tracking
- Add automatic route change tracking for SPA navigation - Implement Cookie consent banner for GDPR compliance - Add performance tracking (LCP, FID, CLS Web Vitals) - Add outbound link click tracking - Integrate contact form submission tracking with conversion events - Add CTA button click tracking in hero section - Integrate error tracking in ErrorBoundary component - Extend analytics utility library with 15+ tracking functions - Configure IP anonymization and privacy settings - Remove unused test files and deployment scripts - Update case studies to include only specified cases - Fix mobile navigation active state issues - Fix lint errors in test files and components BREAKING CHANGE: Google Analytics now requires user consent before tracking
This commit is contained in:
@@ -1,89 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
CDN_DOMAIN=${CDN_DOMAIN:-"https://cdn.novalon.cn"}
|
||||
COS_BUCKET=${COS_BUCKET:-"novalon-cdn-1250000000"}
|
||||
COS_REGION=${COS_REGION:-"ap-chengdu"}
|
||||
DIST_DIR=${DIST_DIR:-"dist/static"}
|
||||
STANDALONE_DIR=${STANDALONE_DIR:-"dist/standalone"}
|
||||
|
||||
echo "========================================="
|
||||
echo "CDN静态资源部署脚本"
|
||||
echo "========================================="
|
||||
echo "CDN域名: $CDN_DOMAIN"
|
||||
echo "COS存储桶: $COS_BUCKET"
|
||||
echo "COS区域: $COS_REGION"
|
||||
echo "静态资源目录: $DIST_DIR"
|
||||
echo "========================================="
|
||||
|
||||
if [ ! -d "$DIST_DIR" ]; then
|
||||
echo "错误: 静态资源目录不存在: $DIST_DIR"
|
||||
echo "请先运行 npm run build 构建项目"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "步骤1: 检查coscmd工具..."
|
||||
if ! command -v coscmd &> /dev/null; then
|
||||
echo "安装coscmd工具..."
|
||||
pip install coscmd
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "步骤2: 配置coscmd..."
|
||||
if [ -z "$COS_SECRET_ID" ] || [ -z "$COS_SECRET_KEY" ]; then
|
||||
echo "错误: 请设置环境变量 COS_SECRET_ID 和 COS_SECRET_KEY"
|
||||
echo "可以在腾讯云控制台 > 访问管理 > API密钥管理中获取"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
coscmd config -a "$COS_SECRET_ID" -s "$COS_SECRET_KEY" -b "$COS_BUCKET" -r "$COS_REGION"
|
||||
|
||||
echo ""
|
||||
echo "步骤3: 上传静态资源到COS..."
|
||||
echo "上传 _next/static/ 目录..."
|
||||
|
||||
coscmd upload -r "$DIST_DIR" /_next/static/ --sync --delete
|
||||
|
||||
echo ""
|
||||
echo "步骤4: 上传public目录中的静态资源..."
|
||||
if [ -d "public" ]; then
|
||||
echo "上传 public/ 目录..."
|
||||
coscmd upload -r public/ / --sync
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "步骤5: 设置COS对象缓存策略..."
|
||||
echo "为静态资源设置长期缓存 (1年)..."
|
||||
|
||||
coscmd set-meta "_next/static/*" "Cache-Control: public, max-age=31536000, immutable" -r
|
||||
|
||||
echo ""
|
||||
echo "步骤6: 刷新CDN缓存..."
|
||||
if [ -n "$CDN_DOMAIN" ]; then
|
||||
CDN_DOMAIN_CLEAN=$(echo "$CDN_DOMAIN" | sed 's|https://||' | sed 's|http://||')
|
||||
echo "刷新CDN域名: $CDN_DOMAIN_CLEAN"
|
||||
|
||||
if command -v tccli &> /dev/null; then
|
||||
tccli cdn PurgePathsCache --Paths '["https://'"$CDN_DOMAIN_CLEAN"'/_next/static/"]' --FlushType flush
|
||||
echo "CDN缓存刷新请求已提交"
|
||||
else
|
||||
echo "提示: 未安装tccli工具,请手动在腾讯云控制台刷新CDN缓存"
|
||||
echo "刷新路径: https://$CDN_DOMAIN_CLEAN/_next/static/"
|
||||
fi
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "========================================="
|
||||
echo "部署完成!"
|
||||
echo "========================================="
|
||||
echo "静态资源已上传到: https://$COS_BUCKET.cos.$COS_REGION.myqcloud.com"
|
||||
echo "CDN加速域名: $CDN_DOMAIN"
|
||||
echo ""
|
||||
echo "后续步骤:"
|
||||
echo "1. 在腾讯云CDN控制台配置加速域名: cdn.novalon.cn"
|
||||
echo "2. 设置源站为COS存储桶: $COS_BUCKET.cos.$COS_REGION.myqcloud.com"
|
||||
echo "3. 配置HTTPS证书"
|
||||
echo "4. 测试CDN加速效果"
|
||||
echo "========================================="
|
||||
@@ -1,43 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
CDN_DOMAIN=${CDN_DOMAIN:-"https://cdn.novalon.cn"}
|
||||
COS_BUCKET=${COS_BUCKET:-"novalon-cdn-1250000000"}
|
||||
COS_REGION=${COS_REGION:-"ap-chengdu"}
|
||||
|
||||
echo "========================================="
|
||||
echo "CDN缓存刷新脚本"
|
||||
echo "========================================="
|
||||
echo "CDN域名: $CDN_DOMAIN"
|
||||
echo "========================================="
|
||||
|
||||
CDN_DOMAIN_CLEAN=$(echo "$CDN_DOMAIN" | sed 's|https://||' | sed 's|http://||')
|
||||
|
||||
echo ""
|
||||
echo "刷新CDN缓存..."
|
||||
|
||||
if command -v tccli &> /dev/null; then
|
||||
echo "使用tccli刷新CDN缓存..."
|
||||
|
||||
tccli cdn PurgePathsCache \
|
||||
--Paths "[\"https://$CDN_DOMAIN_CLEAN/_next/static/\"]" \
|
||||
--FlushType flush
|
||||
|
||||
echo "CDN缓存刷新请求已提交"
|
||||
echo "刷新ID可通过腾讯云控制台查看进度"
|
||||
else
|
||||
echo "错误: 未安装tccli工具"
|
||||
echo ""
|
||||
echo "请手动在腾讯云控制台刷新CDN缓存:"
|
||||
echo "1. 登录腾讯云控制台: https://console.cloud.tencent.com/cdn"
|
||||
echo "2. 进入缓存刷新页面"
|
||||
echo "3. 选择'目录刷新'"
|
||||
echo "4. 输入刷新URL: https://$CDN_DOMAIN_CLEAN/_next/static/"
|
||||
echo "5. 点击提交"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "========================================="
|
||||
echo "完成!"
|
||||
echo "========================================="
|
||||
Reference in New Issue
Block a user