Hướng Dẫn Tích Hợp Đồng Ý Cookie PostHog Product Analytics: Sách Hướng Dẫn Triển Khai Self-Hosted và Cloud cho Năm 2026

PostHog là nền tảng phân tích sản phẩm mà các nhóm kỹ thuật tìm đến khi muốn có phân tích sản phẩm, phát lại phiên, cờ tính năng, thử nghiệm, khảo sát và phân tích web trong một ngăn xếp duy nhất thay vì năm nhà cung cấp được ghép lại với nhau. Đó là đề xuất giá trị. Đó cũng là lý do tại sao một triển khai PostHog mặc định mang theo nhiều nghĩa vụ đồng ý tập trung hơn gần như bất kỳ công cụ nào khác mà nhà xuất bản sẽ cài đặt. Cùng một lệnh gọi posthog.init() bắt các sự kiện sản phẩm có thể bắt đầu ghi lại các phiên, đánh giá cờ tính năng theo định danh liên tục và xếp hàng các lần hiển thị khảo sát — và mỗi hoạt động đó liên quan đến một cơ sở pháp lý khác nhau theo GDPR, ePrivacy và CCPA. Tin tốt là PostHog đi kèm với một trong những API đồng ý chi tiết nhất trong hệ sinh thái phân tích; công việc là thực sự sử dụng nó. Hướng dẫn này trình bày cách triển khai PostHog sao cho tư thế pháp lý phù hợp với thực tế kỹ thuật trên cả các cài đặt self-hosted và PostHog Cloud, trên các khu vực Mỹ và EU, và trên toàn bộ bề mặt phân tích, phát lại, cờ và khảo sát.

Tại sao PostHog yêu cầu đồng ý — và tại sao câu trả lời không giống nhau cho mọi mô-đun

Web SDK của PostHog không phải là thẻ trang thụ động. Trong quá trình khởi tạo mặc định, SDK đặt một hoặc nhiều mục lưu trữ bền vững của bên thứ nhất — theo mặc định là sơ đồ kết hợp cookie cộng với localStorage được khóa dưới ph_{projectKey}_posthog — tạo ra định danh riêng biệt ổn định, bắt lượt xem trang đầu tiên với trình giới thiệu, tham số UTM và định danh nhấp chuột, và mở kênh sự kiện tồn tại lâu đến máy chủ thu thập đã cấu hình. Nếu phát lại phiên được bật ở cấp độ dự án, SDK cũng bắt đầu truyền trực tiếp bản ghi liên tục của DOM được hiển thị, tọa độ chuột và các sự kiện đầu vào. Nếu cờ tính năng được cấu hình, SDK đánh giá chúng theo định danh riêng biệt, lưu trữ các quyết định cho phiên và phát ra sự kiện $feature_flag_called cho mỗi lần đánh giá.

Mỗi hoạt động này ánh xạ đến một cổng đồng ý khác nhau. Duy trì định danh riêng biệt là một thao tác lưu trữ và truy cập theo Điều 5(3) của Chỉ thị ePrivacy và yêu cầu sự đồng ý trước, tự do, cụ thể, có thông tin và rõ ràng trên toàn bộ EEA, Vương quốc Anh và bất kỳ khu vực pháp lý nào đã áp dụng cùng tiêu chuẩn. Bắt các sự kiện hành vi là xử lý dữ liệu cá nhân theo GDPR vì sự kết hợp của định danh, địa chỉ IP và dấu vết hành vi là đủ để xác định một cá nhân. Phát lại phiên nằm trong một danh mục riêng biệt, nghiêm ngặt hơn theo hướng dẫn phát lại phiên của EDPB — phát lại ghi lại DOM được hiển thị và bất kỳ trường đầu vào nào không được che giấu và yêu cầu sự đồng ý rõ ràng, chi tiết khác biệt với sự đồng ý phân tích chung. Đánh giá cờ tính năng là điều tinh tế: một kiểm tra cờ trả về giá trị boolean không tự nó yêu cầu đồng ý, nhưng việc duy trì gán cờ của người dùng đến một định danh ổn định qua các phiên thì có, vì đó là cách thử nghiệm dựa trên cờ tạo ra dữ liệu có thể theo dõi ở cấp độ người dùng.

Những gì PostHog ghi trước khi đồng ý — và những gì phải bị chặn

PostHog Browser SDK mặc định ghi những điều sau khi khởi tạo: một mục cookie và localStorage kết hợp dưới ph_{projectKey}_posthog chứa định danh riêng biệt, định danh phiên và các quyết định cờ tính năng, cộng với khi phát lại phiên được bật, một bộ đệm ghi trong bộ nhớ bổ sung xả vào điểm cuối thu thập mỗi vài giây. SDK cũng gửi ngay lập tức một sự kiện $pageview và nếu tính năng tự động bắt đang bật thì mọi lần nhấp tiếp theo, tương tác biểu mẫu và nhấp chuột giận dữ trên trang.

Mô hình được đề xuất là khởi tạo PostHog với opt_out_capturing_by_default: truedisable_session_recording: true, sau đó đảo cả hai cờ sau khi biểu ngữ đồng ý trả về tín hiệu tích cực. Đây là tư thế tích hợp mà tài liệu PostHog hiện đề xuất, và đây là tư thế tồn tại được qua xem xét của cơ quan quản lý vì nó đảo ngược mặc định: không có gì được bắt cho đến khi đồng ý được ghi lại, và SDK cung cấp quá trình chuyển đổi sạch thay vì cấu hình lại có trạng thái.

Cookie, mục localStorage và định danh mà PostHog lưu trữ

Browser SDK 1.x ghi một mục lưu trữ bền vững cho mỗi dự án, khóa dưới ph_{projectKey}_posthog, với thời hạn hết hạn mặc định 365 ngày. Tùy chọn khởi tạo persistence kiểm soát cơ chế cơ bản: chỉ cookie, chỉ localStorage, localStorage+cookie (mặc định), sessionStorage hoặc memory. Đối với triển khai ưu tiên đồng ý, bền vững memory là mặc định đúng khi đồng ý chưa được cấp — nó đảm bảo không có định danh nào tồn tại lâu hơn phiên trang — với quá trình chuyển đổi sang localStorage+cookie sau khi đồng ý chuyển đổi. SDK cũng ghi một điểm đánh dấu opt-in hoặc opt-out dưới __ph_opt_in_out_{projectKey} để ghi nhớ lựa chọn của người dùng qua các lần truy cập; điểm đánh dấu đó bản thân nó là một cookie cần thiết nghiêm ngặt vì nó lưu trữ quyết định đồng ý.

Ánh xạ các mô-đun PostHog đến các khung đồng ý

PostHog không triển khai IAB TCF hoặc Nền tảng Quyền riêng tư Toàn cầu IAB một cách tự nhiên và không được xây dựng như một nhà cung cấp công nghệ quảng cáo. Tuy nhiên, nó tích hợp với Google Consent Mode v2 thông qua cầu nối phía nhà xuất bản, cung cấp API opt-in và opt-out tự nhiên và tôn trọng tiêu đề Do Not Track thông qua tùy chọn khởi tạo respect_dnt. Mô hình hoạt động trong sản xuất xử lý mỗi mô-đun PostHog như một cổng riêng biệt gắn với tín hiệu CMP cụ thể.

Mô hình tích hợp hoạt động

Triển khai tham chiếu có bốn phần: một CMP cung cấp sự kiện thay đổi đồng ý theo thời gian thực, một bootstrap trì hoãn khởi tạo PostHog với tính năng bắt và phát lại bị tắt, một bộ lắng nghe đồng ý bật opt_in_capturing và công tắc ghi khi các cổng liên quan mở, và một đường rút lui gọi opt_out_capturing, dừng bộ đệm phát lại và xóa các định danh bền vững qua API đặt lại của SDK.

Triển khai Web

Mô hình sạch nhất là tải PostHog SDK trên mỗi trang nhưng gọi posthog.init(apiKey, { api_host: 'https://eu.posthog.com', opt_out_capturing_by_default: true, disable_session_recording: true, persistence: 'memory', respect_dnt: true }) làm bootstrap ban đầu. Đăng ký nhận sự kiện thay đổi đồng ý của CMP. Khi danh mục phân tích chuyển sang true, gọi posthog.set_config({ persistence: 'localStorage+cookie' }) tiếp theo là posthog.opt_in_capturing(); điều này kích hoạt lại việc bắt sự kiện và quá trình chuyển đổi bền vững bắt đầu ghi định danh riêng biệt. Khi danh mục phát lại phiên chuyển sang true, gọi posthog.startSessionRecording(). Khi bất kỳ cổng nào bị rút lại, gọi posthog.opt_out_capturing() cho cổng phân tích hoặc posthog.stopSessionRecording() cho cổng phát lại, hết hạn các mục bền vững liên quan qua posthog.reset() và gửi yêu cầu xóa qua GDPR API của PostHog nếu người dùng đã viện dẫn quyền xóa của họ.

Lựa chọn khu vực: PostHog Cloud Mỹ so với EU so với self-hosted

PostHog vận hành hai khu vực đám mây — Mỹ (us.posthog.com) và EU (eu.posthog.com) — và hỗ trợ các cài đặt self-hosted trên cơ sở hạ tầng riêng của khách hàng. Đối với lưu lượng truy cập EEA và Vương quốc Anh, đám mây EU là mặc định đúng; nó giữ việc thu thập, xử lý và lưu trữ trong EEA và giảm thiểu rủi ro Schrems II mà bất kỳ triển khai phân tích vùng Mỹ nào cũng mang theo. Tùy chọn khởi tạo api_host gắn khu vực. PostHog self-hosted di chuyển toàn bộ ngăn xếp sang cơ sở hạ tầng riêng của nhà xuất bản, đây là tư thế lưu trữ dữ liệu mạnh nhất nhưng không loại bỏ nghĩa vụ đồng ý — cơ sở pháp lý theo dữ liệu, không theo nhà điều hành. Bất kể tùy chọn nào được chọn đều phải được phản ánh trong thông báo quyền riêng tư và hồ sơ xử lý của bộ điều khiển.

Bắt phía máy chủ

PostHog hỗ trợ thu thập sự kiện phía máy chủ qua các SDK Python, Node, Go, Ruby và PHP. Các sự kiện phía máy chủ không được miễn trừ khỏi đồng ý — cơ sở pháp lý theo dữ liệu — nhưng thu thập phía máy chủ cho nhà xuất bản toàn quyền kiểm soát các trường nào được phát ra và khi nào. Một mô hình phổ biến là bắt một tập hợp tối thiểu chỉ các sự kiện thiết yếu phía máy chủ theo lợi ích hợp pháp, sau đó làm phong phú thêm các sự kiện đó với chi tiết hành vi từ máy khách chỉ sau khi người dùng đã cấp đồng ý phân tích. Các sự kiện phía máy chủ và phía máy khách kết hợp trên cùng một định danh riêng biệt khi đồng ý đã chuyển đổi; trước đồng ý, các sự kiện phía máy chủ được phát ra với định danh ẩn danh, tạm thời được đặt lại mỗi phiên. Cách tiếp cận này làm giảm đáng kể rủi ro vì một tập hợp nhẹ các sự kiện máy chủ phục vụ như bộ nhớ thể chế mà không theo dõi người dùng trong khi tải phân tích cốt lõi chờ xác nhận đồng ý.

Xác thực tích hợp và đường kiểm toán

Bước xác thực là điều mà cơ quan quản lý kiểm tra và nhà xuất bản thường bỏ qua nhất. Triển khai PostHog được tích hợp đúng cách phải vượt qua bốn bài kiểm tra theo thứ tự. Thứ nhất, một phiên trình duyệt sạch với biểu ngữ được hiển thị nhưng chưa đưa ra lựa chọn phải tạo ra không yêu cầu nào đến api_host đã cấu hình ngoài việc tìm nạp tệp SDK, không cookie ph_ trong document.cookie và không mục ph_ trong localStorage. Thứ hai, từ chối phân tích phải giữ trạng thái đó — không bắt, không ghi, không định danh bền vững. Thứ ba, chấp nhận phân tích phải tạo ra ngay lập tức sự kiện $opt_in, mục bền vững dự kiến ph_{projectKey}_posthog với các thuộc tính SameSite chính xác và lưu lượng sự kiện chảy đến máy chủ đã cấu hình. Thứ tư, rút lại đồng ý sau đó phải ngay lập tức dừng việc bắt và phát lại thêm, hết hạn các định danh bền vững và kích hoạt yêu cầu xóa qua GDPR API của PostHog nếu người dùng đã viện dẫn quyền xóa.

Kỳ vọng về đường kiểm toán theo hướng dẫn biểu ngữ cookie năm 2023 của EDPB và các ưu tiên của lực lượng đặc nhiệm 2026 được đổi mới là nhà xuất bản có thể chứng minh, cho bất kỳ sự kiện nào trong dự án PostHog, rằng người dùng tạo ra nó đã cấp đồng ý hợp lệ tại thời điểm bắt. Mô hình tiêu chuẩn là đặt phiên bản đồng ý và dấu thời gian làm thuộc tính người trên ID riêng biệt qua posthog.setPersonProperties({ consent_version: 'v3', consent_ts: ts }) để bất kỳ sự kiện cá nhân nào cũng có thể truy nguyên đến một mục nhập nhật ký đồng ý cụ thể. Triển khai được gắn cổng đúng cách, kết hợp với lựa chọn khu vực phù hợp với đối tượng, bền vững mặc định là bộ nhớ và đường xóa kích hoạt khi rút lại, chính là điều biến PostHog từ rủi ro tập trung quy định thành trung tâm có thể bảo vệ của ngăn xếp phân tích sản phẩm.

← Blog Đọc tất cả →