請問有沒有辦法將查詢參數設定為某個url的cookie?
目前我在清漆和 nginx 方面遇到了麻煩,因為它正在剝離 utm 參數,這會導致 GA 出現問題。我無法刪除刪除 utm 參數的程式碼,因為它會淹沒清漆快取。所以我正在考慮獲取 utm 參數並將其設定為 nginx 配置中的 cookie
任何幫助,將不勝感激
太感謝了
答案1
您可以輕鬆地從 Varnish 從後端取得的 URL 中刪除 Google 行銷 URL 參數,例如此處描述:
if (req.url ~ "(\?|&)(gclid|utm_[a-z]+)=") {
set req.url = regsuball(req.url, "(gclid|utm_[a-z]+)=[-_A-z0-9+()%.]+&?", "");
# remove trailing question mark and ampersand from URL
set req.url = regsub(req.url, "[?|&]+$", "");
}
vcl_recv
這必須在Varnish 配置例程中實作。這樣,您看到的URL 在瀏覽器中保持不變(這對於Google Analytics 很重要),但Varnish 將基於標準化URL 進行請求和緩存,而無需這些參數(對於後端,例如PHP,這些參數可以被丟棄)。