2

我們使用django 1.8。在後端使用在elasticbeanstalk和AWS CloudFront上運行的默認授權來緩存CDN級別的應用程序頁面。問題是,我們希望將盡可能少的http頭白名單,以最大限度地減少密鑰的數量和最大的命中率。其中一個標頭變化很大,我們希望排除的是HTTP_REFERER。在業務層面,我們可以使用document.referer通過js解析引用者,並使用ajax調用將其發送到服務器。沒有HTTP_REFERER的Django + CloudFront緩存

問題:csrf登錄,註冊和其他默認django認證應用程序在https協議上的網站上使用時需要HTTP_REFERER。

我發現的解決方案之一是將所有授權頁面移動到單獨的行爲,並在那裏代理所有標題。有沒有其他的方法來完成這樣的工作?

回答

1

我不認爲有另一種解決方案,那麼你提到的那個,使用一個單獨的行爲。

我們通常在前端使用rest api來調用後端,所以我們不需要在那裏使用Referer頭文件。

我們爲/admin/添加了額外的行爲,其中我們轉發Referer