Vibe Tutorial
SEO 分享与数据统计

14.8 法律合规实践

Tip

写代码是技术活,但把网站发布到互联网上就是法律行为。不管你的服务器在哪里,你都得遵守当地的法律。


1. 为什么要学这个?

你做了一个面向欧洲的工具站。 你存了用户的 Cookie,但没弹窗提示,也没写隐私协议。 某天你收到了一封来自律师函,要求赔偿 2万欧元。 这不是吓唬你,GDPR 罚款可是很凶的。


2. 核心概念:合规三件套

2.1 GDPR (通用数据保护条例)

  • 适用:欧洲用户。
  • 要求
    • Consent (同意): 存 Cookie 前必须问用户。
    • Forget (遗忘): 用户说“删了我”,你必须彻底删除他的数据。

2.2 ICP 备案 (中国大陆)

  • 适用:服务器在中国大陆。
  • 要求:实名备案 + 底部挂备案号。
  • 后果:不备案,服务商直接关停 80 端口,网站打不开。

2.3 Terms & Privacy (隐私政策)

  • 适用:全球。
  • 要求:告诉用户,你收了什么数据?你用它干嘛?

3. 解决方案 (HOW)

3.1 简单的 Cookie Banner

如果你必须用 Cookie (比如用了 GA),加一个简单的 React 组件:

'use client'
import { useState, useEffect } from 'react'

export default function CookieBanner() {
  const [show, setShow] = useState(false)

  useEffect(() => {
    // 检查是否已经同意过
    if (!localStorage.getItem('cookie_consent')) {
      setShow(true)
    }
  }, [])

  const accept = () => {
    localStorage.setItem('cookie_consent', 'true')
    setShow(false)
    // 这里再加载统计脚本
    window.umami?.track('Consent Given')
  }

  if (!show) return null

  return (
    <div className="fixed bottom-0 w-full bg-black text-white p-4">
      我们要用 Cookie 改善体验,行吗?
      <button onClick={accept} className="ml-4 bg-white text-black px-2 py-1">
        行
      </button>
    </div>
  )
}

3.2 合规检查流程图

graph TD
    Start["发布网站"] --> Where{"用户在哪里?"}
    
    Where --"中国大陆"--> ICP["ICP 备案 + 公安备案"]
    Where --"欧洲 (EU)"--> GDPR["Cookie 弹窗 + GDPR 条款"]
    Where --"美国 (US)"--> CCPA["CCPA 条款"]
    
    ICP --> Check["底部悬挂备案号"]
    GDPR --> Check
    CCPA --> Check
    
    Check --> Safe["合规上线"]
    
    style ICP fill:#ffcdd2,stroke:#c62828
    style GDPR fill:#bbdefb,stroke:#1976d2
    style Safe fill:#c8e6c9,stroke:#2e7d32

4. 避坑指南

❌ 不要这样做 ✅ 应该这样做 为什么
没有链接 Footer 挂链接 Footer 必须有 Privacy Policy 链接,且全局可见。这是底线。
过度收集 极简原则 如果你不需要手机号,就别让用户填。收集越多,保管责任越大,泄露风险越高。
假装不知道 Umami 使用 Umami 因为不存个人数据,理论上可以豁免复杂的 Cookie 弹窗。这是技术的胜利。

5. 真实案例

Story

2023年,12亿欧元的罚单

2023年,Meta (Facebook) 被欧盟罚款 12亿欧元。 仅仅是因为他们把欧洲用户的数据传回了美国服务器(违反了 GDPR 的数据跨境传输规定)。 巨头尚且如此,小开发者更要小心。虽然你可能不至于被罚 12亿,但被封禁服务器、下架应用是分分钟的事。

Vibe 心法:少收集不必要的数据不仅是道德的自律,更是降低法律风险、对抗 GDPR 巨额罚单的工程实践。从上线第一天起,就应在 Footer 悬挂合规的隐私条款。协助用户行使“遗忘权”,是产品长久赢得信任的基石。


6. 本章小结

  1. 尊重用户:隐私是基本人权。
  2. Less is More:少存点数据,就少点法律风险。
  3. Local Law:入乡随俗,人在哪就守哪的法。