第一方放送路徑功能可將請求透過內容傳遞網路 (CDN) 或網路基礎架構,轉送至 Google 廣告伺服器,藉此復原未遮蓋的使用者 IP 位址。
在第三方要求中,瀏覽器和 OS 功能以及網路設定可能會遮蓋 IP 位址。這項遮蓋功能可能會影響廣告收益、指定地理區域和無效流量偵測。
您的 CDN 會在所有傳入網域的要求中,收到使用者的未遮罩用戶端 IP。這項功能可帶來下列好處:
- 不需變更用戶端程式碼:您不必編輯 JavaScript 或手動傳遞參數。Google 發布商廣告代碼 (GPT) 會從 Google Ad Manager 設定讀取設定的路徑,並以非同步方式執行復原請求。
- 減少負擔:請求輕量,會依網頁瀏覽工作階段在本機快取,並與廣告版位定義非同步執行。
- 加密酬載:根據預設,這項功能會以加密酬載的形式傳回使用者的 IP 位址。
本頁面說明如何將第一方放送路徑設為偏好的 CDN。
必要條件
設定 CDN 前,請先完成下列事項:
- 在 Ad Manager 帳戶中指定放送路徑,例如
/adserver/。如要指定路徑,請按照「方法 1:第一方放送路徑」中的步驟操作。- 請確認提供路徑不重複,且您傳送的流量不會使用這個路徑。
- 備妥或設定下列項目:
- 目標主機或來源:
securepubads.g.doubleclick.net - 目標路徑:
/pagead/fpm - 「Protocol」(通訊協定):HTTPS,預設通訊埠為
443。 - 標頭:將標頭設為
Host: securepubads.g.doubleclick.net。 - 快取:設定 CDN 略過路徑的快取,例如將快取政策設為略過快取或
Cache-Control: no-store標頭。
- 目標主機或來源:
- 如果 CDN 是 Cloudflare,您必須具備 Cloudflare Enterprise 級別,才能建立來源規則。
設定 CDN
設定 CDN 或反向 Proxy,將符合設定路徑的要求轉送至 Google 廣告伺服器。選取偏好的 CDN:
Cloudflare
在資訊主頁中建立規則,並使用下列值:
- 自訂篩選運算式:新增下列內容:
- 欄位:
URI Path - 運算子:
starts with - 值:您的路徑,例如
/adserver/。
- 欄位:
- 「Host Header Override」(覆寫主機標頭):選取「Rewrite to」(重寫為),然後新增目標主機
securepubads.g.doubleclick.net。 - DNS Override:選取「Override to」,然後新增目標主機
securepubads.g.doubleclick.net。
- 自訂篩選運算式:新增下列內容:
在資訊主頁中建立網址規則重寫,並使用下列值:
- 自訂篩選運算式:新增下列內容:
- 欄位:
URI Path - 運算子:
starts with - 值:您的路徑,例如
/adserver/。
- 欄位:
- 路徑:依序選取「Rewrite to」>「Static」,然後新增
/pagead/fpm目標路徑。 - 查詢:選取「保留」。
- 自訂篩選運算式:新增下列內容:
Amazon CloudFront
按照「來源設定」中的步驟操作,並輸入下列值:
- 來源網域:
securepubads.g.doubleclick.net - 「通訊協定」:HTTPS
- 來源網域:
按照「建立函式」一節的說明操作,並新增下列範例:
function handler(event) { var request = event.request; request.uri = '/pagead/fpm'; return request; }這個範例會擷取傳入的要求事件,將 URI 指派給目標路徑,然後傳回要求。
按一下「Save changes」(儲存變更),前往「Publish」(發布) 分頁,然後點選「Publish function」(發布函式)。
按照「在控制台中更新發布作業」一節的步驟操作,並使用下列值:
- 路徑模式:您的路徑,例如
/adserver/*。 - 來源和來源群組:目標主機
securepubads.g.doubleclick.net。 - 快取政策:選取
CachingDisabled。 - Origin request policy:選取
AllViewerExceptHostHeader。 - 函式關聯:
- Viewer request:選取「CloudFront Function」,然後新增函式名稱。
- 路徑模式:您的路徑,例如
Fastly
按照「新增主機」一節的說明操作,並輸入下列值:
- Address:目標主機
securepubads.g.doubleclick.net - 通訊埠:預設通訊埠
443。 - Enable TLS?:是
- 憑證主機名稱:
securepubads.g.doubleclick.net- 選取「Match the SNI hostname to the Certificate Name」。
- SNI 主機名稱:
securepubads.g.doubleclick.net - 覆寫主機:
securepubads.g.doubleclick.net
- 憑證主機名稱:
- Address:目標主機
按照建立 VCL 程式碼片段的步驟操作,並使用下列範例:
if (req.url ~ "^PATH") { set req.backend = F_NAME; set req.http.Host = "securepubads.g.doubleclick.net"; set req.url = regsub(req.url, "^PATH", "/pagead/fpm"); return(pass); }更改下列內容:
NAME:主機名稱,例如Google_GAM_FPM_Backend。PATH:路徑,例如/adserver/。
Google Cloud
按照「建立 NEG 和網際網路端點」一節的說明操作,並使用下列值:
- 「網路端點群組類型」:選取「網際網路 NEG (全域)」
- 預設通訊埠:
443 - 「New network endpoint」(新網路端點):選取「Fully qualified domain name (FQDN) and port」(完整網域名稱 (FQDN) 與通訊埠)。
- FQDN:新增目標主機
securepubads.g.doubleclick.net。
建立全域後端服務,並使用下列值設定自訂要求標頭:
- 「後端類型」:選取「網際網路端點群組」。
- 通訊協定:選取「HTTPS」。
- 標頭名稱:
Host - 標頭值:新增目標主機
securepubads.g.doubleclick.net。
- 標頭名稱:
按照「設定網址對應」中的步驟操作。
在「Routing rules」(轉送規則) 中,找出與子網域相符的正式環境主機規則。
使用
routeRules設定更新路徑比對器:name: NAME defaultService: projects/PROJECT_ID/global/backendServices/DEFAULT_BACKEND routeRules: - priority: 1 matchRules: - prefixMatch: PATH service: projects/PROJECT_ID/global/backendServices/BACKEND_NAME routeAction: urlRewrite: pathPrefixRewrite: /pagead/fpm更改下列內容:
BACKEND_NAME:您在步驟 2 建立的後端服務名稱,例如gam-fpm-backend-service。DEFAULT_BACKEND:託管網站的預設後端服務。- 如果您在 Cloud Storage 上託管網站,請將
defaultService欄位資源路徑中的backendServices替換為backendBuckets參數。
- 如果您在 Cloud Storage 上託管網站,請將
NAME:路徑比對器的名稱,例如gam-fpm-matcher。PATH:路徑,例如/adserver/。PROJECT_ID:您的專案 ID。
測試實作成果
如要確認 CDN 是否會代理要求並傳遞 IP 位址,請使用 curl 指令執行測試:
curl -i https://example.comPATH
將 PATH 替換為您的路徑,例如 /adserver/。
如果成功,您會收到下列輸出內容:
- HTTP 狀態:
200 OK - 回應內容:Google 後端伺服器傳送的酬載,預設包含加密的 IP 權杖。
疑難排解導入問題
本節說明在 CDN 中排解第一方放送路徑導入問題的工作流程。
下表詳細列出問題、原因和疑難排解的解決方案:
| 問題 | 原因 | 解決方案 |
|---|---|---|
| 從 CDN 收到 HTTP 狀態 404 或 502 | 路徑重寫功能未啟用,或缺少 Host 標頭。 |
確認重寫對應至 /pagead/fpm 目標路徑,且 Host 標頭已覆寫至目標主機 securepubads.g.doubleclick.net。 |
| 廣告請求中的 IP 位址不會更新。 | 已在 CDN Proxy 啟用快取 | 請務必將路徑的快取政策設為 CachingDisabled 政策或 Cache-Control: no-store 標頭。每個用戶端都必須連至後端服務,才能評估其特定 IP 位址。 |
| SSL 或 TLS 握手失敗 | 後端來源連線的 SNI 不符 | 請確認您已設定 CDN,在 TLS SNI 擴充功能中傳送目標主機 securepubads.g.doubleclick.net。 |
廣告請求中缺少 ips 參數。 |
Ad Manager 路徑與 CDN 路徑不符 | 確認在 Ad Manager 使用者介面「全域設定」頁面中輸入的路徑,與 CDN 上設定的路徑相符。詳情請參閱「傳遞未遮蓋的發布商提供的 IP (Beta 版)」。 |