Cho phép thẻ hoạt động theo khu vực cụ thể

Bài viết này dành cho những nhà phát triển phân phát tập lệnh Google từ máy chủ của riêng họ. Bạn nên bật hành vi theo khu vực cho thẻ để sử dụng các tính năng như chế độ đồng ý nâng cao và kiểm soát hành vi của thẻ dựa trên vị trí của người dùng.

Nếu phân phát một tập lệnh từ miền của bên thứ nhất, bạn nên cung cấp thông tin vị trí địa lý của người dùng trong tiêu đề của yêu cầu để có thể sử dụng các tham số event_location.countryevent_location.region. Nếu có trong tiêu đề của yêu cầu, địa chỉ IP sẽ được ưu tiên trong việc định vị vị trí. Nếu không, các tham số event_location.countryevent_location.region sẽ được dùng để gửi thông tin về quốc gia và khu vực tương ứng.

Trước khi bắt đầu

Hướng dẫn này giả định rằng bạn đã làm xong những việc sau:

Bước 1: Thiết lập tiêu đề của yêu cầu

Bạn cần gửi các tiêu đề yêu cầu cụ thể có chứa thông tin về khu vực của người dùng, như mô tả trong các phần bên dưới.

Bạn có thể bắt đầu ngay từ Bước 2 nếu:

  • Bạn sử dụng App Engine. App Engine tự động gửi tiêu đề địa lý.
  • Bạn sử dụng một nhà cung cấp cơ sở hạ tầng khác với những nhà cung cấp được liệt kê bên dưới. Bạn cần thiết lập tiêu đề tuỳ chỉnh.

Cloud Run với trình cân bằng tải của GCP

Bạn có thể gửi thông tin vị trí địa lý bằng tất cả tiêu đề yêu cầu HTTP hoặc cho các yêu cầu cụ thể. Vì việc thêm tiêu đề yêu cầu tuỳ chỉnh sẽ phải trả phí trên cơ sở 1 triệu yêu cầu, nên bạn chỉ nên thêm thông tin địa lý cho các yêu cầu phân phát tập lệnh Google. Ban đầu, lựa chọn này đòi hỏi bạn phải thiết lập nhiều hơn nhưng giúp bạn chạy cơ sở hạ tầng một cách tiết kiệm nhất có thể.

Yêu cầu về tập lệnh

Để chỉ thêm tiêu đề địa lý cho các yêu cầu về tập lệnh, bạn cần thiết lập một phần phụ trợ mới và tạo các quy tắc định tuyến.

Cách tạo một phần phụ trợ mới:

  1. Mở trình cân bằng tải GCP
  2. Trong bộ cân bằng tải, hãy mở phần Cấu hình phụ trợ. Tạo một dịch vụ phụ trợ mới.
    Ảnh chụp màn hình chế độ cài đặt cấu hình phụ trợ
  3. Định cấu hình dịch vụ phụ trợ mới:
    • Loại phụ trợ: chọn loại nhóm thiết bị đầu cuối mạng mà ứng dụng của bạn sử dụng. Nếu bạn sử dụng Cloud Run, hãy chọn Nhóm điểm cuối mạng không máy chủ.
    • Trong Phụ trợ mới, hãy chọn nhóm điểm cuối mạng của việc triển khai Trình quản lý thẻ phía máy chủ.
      Ảnh chụp màn hình dịch vụ phụ trợ mới
  4. Mở mục Cấu hình nâng cao. Thêm tiêu đề yêu cầu tuỳ chỉnh.
    Tên tiêu đề Giá trị tiêu đề
    X-Gclb-Country {client_region}
    X-Gclb-Region {client_region_subdivision}
  5. Lưu dịch vụ phụ trợ mới.

Cách định cấu hình quy tắc định tuyến:

  1. Trong trình cân bằng tải, hãy mở mục Quy tắc định tuyến. Chọn chế độ Đường dẫn và quy tắc nâng cao của máy chủ lưu trữ.
  2. Cập nhật tham số pathRules để liên kết gtm.js, /gtag/js/gtag/destination với dịch vụ phụ trợ mới.
    pathRules:
    - paths:
      - /gtm.js
      - /gtag*
      service: projects/project_id/global/backendServices/new backend service
    - paths:
      - /*
      service: projects/project_id/global/backendServices/original backend service
  3. Lưu thay đổi.

Tất cả yêu cầu

Để gửi thông tin vị trí địa lý cùng với tất cả các yêu cầu HTTP, bạn cần thêm tiêu đề yêu cầu tuỳ chỉnh vào dịch vụ phụ trợ hiện có, hãy xem tài liệu của Google Cloud. Tạo một tiêu đề yêu cầu tuỳ chỉnh mới cho mỗi tiêu đề bên dưới:

Tên tiêu đề Giá trị tiêu đề
X-Gclb-Country {client_region}
X-Gclb-Country {client_region_subdivision}

Trình cân bằng tải của GCP

Bạn có thể gửi thông tin vị trí địa lý bằng tất cả tiêu đề yêu cầu HTTP hoặc cho các yêu cầu cụ thể. Vì việc thêm tiêu đề yêu cầu tuỳ chỉnh sẽ phải trả phí trên cơ sở 1 triệu yêu cầu, nên bạn chỉ nên thêm thông tin địa lý cho các yêu cầu phân phát tập lệnh Google. Ban đầu, lựa chọn này đòi hỏi bạn phải thiết lập nhiều hơn nhưng giúp bạn chạy cơ sở hạ tầng một cách tiết kiệm nhất có thể.

Yêu cầu về tập lệnh

Để chỉ thêm tiêu đề địa lý cho các yêu cầu về tập lệnh, bạn cần thiết lập một phần phụ trợ mới và tạo các quy tắc định tuyến.

Cách tạo một phần phụ trợ mới:

  1. Mở trình cân bằng tải GCP
  2. Trong bộ cân bằng tải, hãy mở phần Cấu hình phụ trợ. Tạo một dịch vụ phụ trợ mới.
    Ảnh chụp màn hình chế độ cài đặt cấu hình phụ trợ
  3. Định cấu hình dịch vụ phụ trợ mới:
    • Loại phụ trợ: chọn loại nhóm thiết bị đầu cuối mạng mà ứng dụng của bạn sử dụng. Nếu bạn sử dụng Cloud Run, hãy chọn Nhóm điểm cuối mạng không máy chủ.
    • Trong Phụ trợ mới, hãy chọn nhóm điểm cuối mạng của việc triển khai Trình quản lý thẻ phía máy chủ.
      Ảnh chụp màn hình dịch vụ phụ trợ mới
  4. Mở mục Cấu hình nâng cao. Thêm tiêu đề yêu cầu tuỳ chỉnh.
    Tên tiêu đề Giá trị tiêu đề
    X-Gclb-Country {client_region}
    X-Gclb-Region {client_region_subdivision}
  5. Lưu dịch vụ phụ trợ mới.

Cách định cấu hình quy tắc định tuyến:

  1. Trong trình cân bằng tải, hãy mở mục Quy tắc định tuyến. Chọn chế độ Đường dẫn và quy tắc nâng cao của máy chủ lưu trữ.
  2. Cập nhật tham số pathRules để liên kết gtm.js, /gtag/js/gtag/destination với dịch vụ phụ trợ mới.
    pathRules:
    - paths:
      - /gtm.js
      - /gtag*
      service: projects/project_id/global/backendServices/new backend service
    - paths:
      - /*
      service: projects/project_id/global/backendServices/original backend service
  3. Lưu thay đổi.

Tất cả yêu cầu

Để gửi thông tin vị trí địa lý cùng với tất cả các yêu cầu HTTP, bạn cần thêm tiêu đề yêu cầu tuỳ chỉnh vào dịch vụ phụ trợ hiện có, hãy xem tài liệu của Google Cloud. Tạo một tiêu đề yêu cầu tuỳ chỉnh mới cho mỗi tiêu đề bên dưới:

Tên tiêu đề Giá trị tiêu đề
X-Gclb-Country {client_region}
X-Gclb-Country {client_region_subdivision}

Amazon Web Services (AWS) CloudFront

Tạo một chính sách yêu cầu về nguồn gốc để thêm tiêu đề CloudFront-Viewer-CountryCloudFront-Viewer-Country-Region vào yêu cầu.

Thao tác này sẽ tự động thêm các tiêu đề sau cùng với giá trị của chúng:

Tên tiêu đề Giá trị tiêu đề
CloudFront-Viewer-Country Quốc gia của người dùng
CloudFront-Viewer-Country-Region Phân khu của người dùng
Chế độ cài đặt tiêu đề trong AWS CloudFront

Azure Front Door

Sử dụng Rules Engine (Công cụ quy tắc), hãy tạo một bộ quy tắc có thao tác modify request header (sửa đổi tiêu đề của yêu cầu) với mối liên kết sau:

Tên tiêu đề Giá trị tiêu đề
X-Azure-Country {geo_country}
Ảnh chụp màn hình cấu hình Azure Front Door

Cloudflare

Bật "Thêm tiêu đề vị trí của khách truy cập" trong phần biến đổi được quản lý:

Thao tác này sẽ tự động thêm tiêu đề sau cùng với giá trị của tiêu đề:

Tên tiêu đề Giá trị tiêu đề
CF-IPCountry Quốc gia của người dùng
Ảnh chụp màn hình cấu hình cloudflare

Bước 2: Thiết lập biến Khu vực của khách truy cập

Nếu bạn đã thiết lập tiêu đề địa lý như đã nêu ở trên, Trình quản lý thẻ sẽ tự động phát hiện khu vực hoặc quốc gia bằng cách đọc tiêu đề của yêu cầu HTTP. Ngoài ra, bạn có thể thiết lập tiêu đề tuỳ chỉnh.

Tự động phát hiện

  1. Mở Trình quản lý thẻ của Google
  2. Mở vùng chứa phía máy chủ.
  3. Trong trình đơn Biến, hãy Định cấu hình danh sách biến tích hợp sẵn.
  4. Chọn Khu vực của khách truy cập.

Giờ đây, bạn có thể sử dụng tiêu đề địa lý trong biến Khu vực của khách truy cập.

Tiêu đề tuỳ chỉnh

  1. Mở Trình quản lý thẻ của Google
  2. Mở vùng chứa phía máy chủ.
  3. Trong trình đơn Biến, hãy tạo một biến do người dùng xác định Mới thuộc loại Khu vực của khách truy cập.
  4. Trong mục Cấu hình biến, hãy chọn Biến tuỳ chỉnh.
  5. Trong trình đơn Biến, hãy tạo 2 biến tiêu đề của yêu cầu mới: Một biến cho quốc gia và một biến cho mã phân vùng. Điền các giá trị bằng mã quốc gia vào(các) tiêu đề của yêu cầu HTTP.

  6. Sử dụng các biến mà bạn đã tạo trong biến Khu vực của khách truy cập như minh hoạ trong ảnh chụp màn hình.

    Ảnh chụp màn hình chế độ cài đặt biến

  7. Đặt tên cho biến, rồi nhấp vào Lưu.

Bước 3: Bật chế độ cài đặt theo khu vực cụ thể trong ứng dụng

Để sử dụng khu vực của khách truy cập để xử lý các yêu cầu HTTP đến, bạn phải thêm khu vực đó vào ứng dụng của mình.

  1. Chọn ứng dụng Trình quản lý thẻ của Google: Vùng chứa trên web.

  2. Chọn Bật chế độ cài đặt theo khu vực cụ thể. Thêm biến {{Visitor Region}} mà bạn đã tạo ở bước trước vào trường Khu vực.

  3. Lưu khách hàng.

Bước 4: Xác minh rằng chế độ cài đặt khu vực được áp dụng

Cách kiểm tra xem chế độ cài đặt của bạn có hoạt động hay không:

  1. Mở Chế độ xem trước cho vùng chứa phía máy chủ của bạn.
  2. Tải trang web của bạn trong khi sử dụng tính năng phân phát của bên thứ nhất.
  3. Trong cửa sổ xem trước, hãy nhấp vào Google Analytics GA4 đã xác nhận quyền sở hữu. Ảnh chụp màn hình của ứng dụng
  4. Để xem vùng thực tế, hãy thay đổi nút chọn Display Variables (Hiển thị biến) thành các giá trị. Ảnh chụp màn hình của trường khu vực của khách truy cập
    • ✅ Phương thức triển khai của bạn chính xác nếu thuộc tính Khu vực hiển thị mã quốc gia.
    • ❌ Nếu thuộc tính Region (Khu vực) hiển thị undefined hoặc bị thiếu, thì tức là máy chủ của bạn không nhận được dữ liệu khu vực nào. Kiểm tra xem tiêu đề HTTP của máy chủ có được thiết lập theo các biến được xác định trước mà Trình quản lý thẻ của Google đang tìm kiếm hay không, hãy xem phần Thiết lập tiêu đề của yêu cầu.

Các bước tiếp theo