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.country và event_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.country và event_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:
- Thiết lập vùng chứa phía máy chủ trong Trình quản lý thẻ
- Thiết lập máy chủ gắn thẻ
- Thiết lập tính năng phân phát tập lệnh của bên thứ nhất
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:
- Mở trình cân bằng tải GCP
- 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 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ủ.

- 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} - Lưu dịch vụ phụ trợ mới.
Cách định cấu hình quy tắc định tuyến:
- 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ữ.
- Cập nhật tham số
pathRulesđể liên kếtgtm.js,/gtag/jsvà/gtag/destinationvớ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
- 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:
- Mở trình cân bằng tải GCP
- 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 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ủ.

- 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} - Lưu dịch vụ phụ trợ mới.
Cách định cấu hình quy tắc định tuyến:
- 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ữ.
- Cập nhật tham số
pathRulesđể liên kếtgtm.js,/gtag/jsvà/gtag/destinationvớ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
- 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-Country và CloudFront-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 |
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} |
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 |
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
- Mở Trình quản lý thẻ của Google
- Mở vùng chứa phía máy chủ.
- Trong trình đơn Biến, hãy Định cấu hình danh sách biến tích hợp sẵn.
- 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
- Mở Trình quản lý thẻ của Google
- Mở vùng chứa phía máy chủ.
- 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.
- Trong mục Cấu hình biến, hãy chọn Biến tuỳ chỉnh.
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.
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.
Đặ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.
Chọn ứng dụng Trình quản lý thẻ của Google: Vùng chứa trên web.
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.
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:
- Mở Chế độ xem trước cho vùng chứa phía máy chủ của bạn.
- 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.
- 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.
- Để 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ị.
- ✅ 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ị
undefinedhoặ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.