本文件可協助開發人員轉送所有伺服器端代碼 通過 Proxy 伺服器處理流量
事前準備
設定 Proxy 伺服器轉送功能之前,請先確認您已完成以下作業:
部署的 Proxy 伺服器支援
HTTP CONNECT
要求。可以將來自 Proxy 伺服器的特定傳出流量加入許可清單。 例如使用虛擬私有雲 防火牆或 Proxy 存取權控制清單 (ACL)。
設定 Proxy 伺服器轉送
Cloud Run
為 Cloud Run 部署作業將流量轉送至 Proxy:
- 開啟 Cloud Run
- 選擇伺服器端標記 Cloud Run 執行個體。
- 按一下
「Edit & deploy new revision」(編輯及部署新的修訂版本)。部署修訂版本畫面會隨即開啟。
- 在「容器」下方,選擇您的伺服器容器。開啟 這樣容器設定就會開啟
如要展開服務設定,請選取「Variables &」(變數與)密鑰 分頁。按一下「Add Variable」按鈕,並新增下列環境 變數:
- Name (名稱):
HTTP_PROXY
- Value (值):Proxy 伺服器的 URI (例如
https://proxy.example.com:3333
或http://32.12.83.10
)
- Name (名稱):
按一下 [完成]。
確認您的修訂版本,然後按一下「部署」。
手動部署
如何將流量轉送至 Proxy 以進行手動部署:
定義 Docker 映像檔可存取的環境變數:
- Name (名稱):
HTTP_PROXY
- Value (值):Proxy 伺服器的 URI (例如
https://proxy.example.com
或http://32.12.83.10:1234
)
- Name (名稱):
使用新的環境變數執行 Docker 映像檔。
docker run -p 8080:8080 \ -e CONTAINER_CONFIG=CONTAINER_CONFIG \ -e HTTP_PROXY=PROXY_URL \ gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable
結果:伺服器端代碼部署作業會將所有傳出流量傳送至 您在環境變數中指定的 Proxy 端點
驗證 Proxy 伺服器設定
如要驗證 Proxy 要求設定,請檢查 Google 代碼管理工具和 Proxy 伺服器設定
如何驗證伺服器容器 Proxy 要求:
開啟伺服器容器。
-
- 確認您的用戶端已聲明傳入的要求。
- 確認代碼和變數能夠成功傳送傳出 HTTP 要求。
- 如要查看要求是否透過 Proxy 伺服器傳送,請按一下 查看 HTTP 要求詳細資料的 HTTP 要求。
如要驗證 Proxy 設定,請按照下列步驟操作:
- 檢查網路和 Proxy 伺服器記錄。您應該會看到 成功傳送至下列端點的要求:
- 檢查是否有傳送至其他端點的要求。
- 視您使用的伺服器端標記功能而定,您可能也會看到 向其他端點發出的要求,例如 www.google-analytics.com、 bigquery.googleapis.com 或 第三方端點將需要的任何其他端點加入許可清單 代碼設定
選用:將 Proxy 伺服器的傳出流量加入許可清單
如果封鎖從您的網路或 Proxy 伺服器傳出的傳出流量, 您必須為標記伺服器執行個體將 Google 代碼管理工具網域加入許可清單,才能 這些研究有助於我們找出 能引導後續作業的標準將傳出流量加入許可清單的方式取決於您的網路環境和 以及 Proxy 軟體開始將端點加入許可清單前,請務必確認 掌握網路拓撲
下列網域的用途是擷取、預覽及偵錯 您的 Google 代碼管理工具容器:
https://www.googletagmanager.com
https://tagmanager.google.com
${Preview server URL}
如果預覽伺服器並非透過 Proxy 伺服器代管,或者 具有限制的網路規則,將來自下列來源的傳出流量加入許可清單: 與預覽伺服器通訊當您設定預覽伺服器網址時 部署伺服器容器。
選用:在您的 Proxy 伺服器使用基本驗證
如果貴機構需要驗證,您可以使用基本驗證 以及所有伺服器類型
如要使用基本驗證,請將憑證 (使用者名稱/密碼) 加入 輸入的 Proxy 伺服器網址
HTTP_PROXY=http(s)://USER_NAME:PASSWORD@PROXY_URL
每個對 Proxy 提出的要求都會在 Proxy-Authorization 標頭為 Base64 值。
如果使用 Cloud Run,請儲存 Proxy 端點憑證 Secret Manager。Secret Manager 可讓 Cloud Run 在啟動時存取密鑰,並解析該值。 瞭解如何在 Cloud Run 中設定密鑰。
選用:停用特定主機的 Proxy
NO_PROXY
環境變數可讓您定義以半形逗號分隔的清單
或部分主機名稱與無法透過 Proxy 伺服器傳送的主機名稱。
舉例來說:
NO_PROXY=example.com,169.254.169.254,diagnostics.example2.com:3131
sGTM 容器不會代理下列要求:
http://example.com
、https://sub.example.com
、https://other.example.com:123
http://169.254.169.254
、https://169.254.169.254
、http://169.254.169.254:123
http://diagonstics.example2.com:3131
、https://diagonstics.example2.com:3131