【Chrome 85 更新】淺談Referer-Policy 和更新影響 - MAX行銷誌
文章推薦指數: 80 %
HTTP Referrer-Policy 是什麼? 二. Chrome 85 Referer-Policy 更新了什麼? 三. 為什麼要做這項變動? 四. 有什麼影響?
跳至主要內容
文章目錄
一.開始之前,先科普一下HTTPReferer是什麼?HTTPReferrer-Policy是什麼?二.Chrome85Referer-Policy更新了什麼?三.為什麼要做這項變動?四.有什麼影響?五.如何測試此項改變六.如何修改Referrer-Policy參數1.Nginx上設定Referrer-Policy2.WordPress套件設定Referrer-Policy3.在html中設定Referrer-Policy
一.開始之前,先科普一下
HTTPReferer是什麼?
當使用者訪問網站時,會發送請求(request)給伺服器主機,而請求header中會有一個欄位是「referer」,而此欄位會存放當前請求來源的位置,也就是說請求的來源頁面。
舉個例子:當小明從「iT邦幫忙」網站中點擊連結後,進入「Max行銷誌」網站時,所發送的request請求referer就會是https://ithelp.ithome.com.tw/的網址。
補充冷知識:早期的人在講「referer」的時候拼錯字了,所以HTTP裡面的「referer」,正確拼法其實是「referrer」,但後來就將錯就錯了,變成一個軟體界著名的拼字錯誤案例XDD
HTTPReferrer-Policy是什麼?
和剛剛「referer」敘述有點相同,當使用者訪問網站時,會發送請求(request)給伺服器主機,而請求header中會有一個欄位是「Referrer-Policy」,是用來限制「referer」欄位所回傳的網址詳細程度,可以設定的參數如下:
Referrer-Policy:no-referrerReferrer-Policy:no-referrer-when-downgradeReferrer-Policy:originReferrer-Policy:origin-when-cross-originReferrer-Policy:same-originReferrer-Policy:strict-originReferrer-Policy:strict-origin-when-cross-originReferrer-Policy:unsafe-url
舉個例子:1.如果在Header中設定「Referrer-Policy:no-referrer」則伺服器接收到的請求中就不會有「referer」的來源資訊2.如果在Header中設定「Referrer-Policy:no-referrer-when-downgrade」則是當請求從https發送至http時,不會顯示「referer」的來源資訊
補充冷知識:GoogleAnalytics會讀取HTTPreferer來判別要分類到什麼類型(Organic/Social/Referral/Email…),也就是說如果沒有「referer」的話,會直接被GA判定為直接流量(direct)。
GoogleAnalyticsDefaultChannelGrouping
二.Chrome85Referer-Policy更新了什麼?
Chromeplanstoswitchitsdefaultpolicyfromno-referrer-when-downgradetostrict-origin-when-cross-origin,startinginversion85.Thismeansthatifnopolicyissetforyourwebsite,Chromewillusestrict-origin-when-cross-originbydefault.Notethatyoucanstillsetapolicyofyourchoice;thischangewillonlyhaveaneffectonwebsitesthathavenopolicyset.AnewdefaultReferrer-PolicyforChrome:strict-origin-when-cross-origin
Chrome將會在version85(時間是July2020forbeta,August2020forstable),將Referrer-Policy預設值從no-referer-when-downgrade改成strict-origin-when-cross-origin
廢話不多說,我們實際上操作設定一次,就知道發生什麼事了!
▍情境如下:
使用者從這篇文章中https://ithelp.ithome.com.tw/articles/10230353點擊了Max行銷誌的文章:
1.在Chrome85版本之前,Referrer-Policy預設值為no-referer-when-downgrade,所以在Headers裡面可以看到referer會顯示完整來源網址:https://ithelp.ithome.com.tw/articles/10230353
no-referrer-when-downgrade
2.在Chrome85版本之後,Referrer-Policy預設值為strict-origin-when-cross-origin,在Headers裡面看到referer僅會顯示origin網址:https://ithelp.ithome.com.tw/
strict-origin-when-cross-origin
小結論:也就是說當設定成strict-origin-when-cross-origin後,只要referer的origin與目前網頁的origin不相同,在cross-origin的請求就不會顯示referer完整的網址。
三.為什麼要做這項變動?
strict-origin-when-cross-originoffersmoreprivacy.Withthispolicy,onlytheoriginissentintheRefererheaderofcross-originrequests.ThispreventsleaksofprivatedatathatmaybeaccessiblefromotherpartsofthefullURLsuchasthepathandquerystring.AnewdefaultReferrer-PolicyforChrome:strict-origin-when-cross-origin
有些網站會將個人資訊放置於網址參數中,像是www.example.com/?age=40&smoker=1&parent=&pregnant=1,而使用strict-origin-when-cross-origin這些資訊參數就會避免被洩漏給cross-origin的請求(像是Ads,Analytics…)。
Referrersleakinformation
四.有什麼影響?
像是GoogleAnalytics的FullReferer,未來可能就只會剩下origin的來源了,不再是完整的網址了。
GA–FullReferrer
五.如何測試此項改變
訪問chrome://flags/#reduced-referrer-granularity,將這個flagenabled,就會將Referrer-Policy的預設值修改成strict-origin-when-cross-origin囉
六.如何修改Referrer-Policy參數
1.Nginx上設定Referrer-Policy
如果是使用Nginx修改,只需使用add_header加上Referrer-Policy即可
add_headerReferrer-Policy"no-referrer";
2.WordPress套件設定Referrer-Policy
如果是使用WordPress套件可以參考此篇:SettingaHTTPReferrerPolicy(Referrer-PolicyHeaders)inWordPress–Pagely®Support
3.在html中設定Referrer-Policy
html中在meta中設定此份html的Referrer-Policy
延伸文章資訊
- 1HttpRequestHeaders.Referrer 屬性(System.Net.Http.Headers)
public Uri? Referrer { get; set; } member this.Referrer : Uri with get, set. Public Property Refe...
- 2referrer - Yahoo奇摩字典搜尋結果
referrer · 查看更多. IPA[rəˈfərər]. 美式. n. a person who sends or directs someone to an expert or spec...
- 3【Chrome 85 更新】淺談Referer-Policy 和更新影響 - MAX行銷誌
HTTP Referrer-Policy 是什麼? 二. Chrome 85 Referer-Policy 更新了什麼? 三. 為什麼要做這項變動? 四. 有什麼影響?
- 4HTTP參照位址- 维基百科,自由的百科全书
Referer的正确英语拼法是referrer。这是早期HTTP规范当中存在的拼写错误,后来为保持向下兼容将错就错。例如DOM Level 2、Referrer Policy等其他网络技术的规范...
- 5referrer - Linguee | 中英词典(更多其他语言)
大量翻译例句关于"referrer" – 英中词典以及8百万条中文译文例句搜索。 ... visitor his/her IP address, geographical location, c...