我有一個在 LAMP 系統上運行的 wordpress 網站。
我試圖提高安全性(我遠不是專家!)并添加了一個 CSP 標頭。
Header set Content-Security-Policy "default-src 'self'; font-src 'self' data: https://fonts.gstatic.com; frame-src https://www.google.com https://www.youtube.com; img-src 'self' https://secure.gravatar.com; script-src 'self' 'unsafe-inline' ; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; object-src 'none'"
我不明白的是:如果我unsafe-inline從script-src我的日歷小部件中洗掉,則在 Windows 瀏覽器上不再加載(測驗了 firefox 和 chrome)。但它適用于 Linux 瀏覽器 (Firefox)。
這是 apache2、Windows 瀏覽器或日歷 wp 插件中的錯誤嗎?
我糊涂了。:-)
uj5u.com熱心網友回復:
它看起來不像 Apache 錯誤,它只是將 CSP 作為字串發送,甚至不了解其中的內容。
當然,您可以使用一些用戶代理條件,httpd.conf例如:
SetEnvIfNoCase User-Agent "Linux x86_64" noCSP=1
并發布依賴noCSP標志的 CSP 以排除某些型別的用戶代理的 CSP 標頭。
但是您可以輕松澄清這一點,并確保您在 Windows/Linux 瀏覽器中擁有相同的 CSP 標頭。
我認為 WP 日歷插件使用了一些行內腳本,這些腳本在沒有'unsafe-inline'. 您可以在 windows 瀏覽器的瀏覽器控制臺中查看 CSP 錯誤。
也許您在 Linux Firefox 瀏覽器中禁用了 CSP(about:config頁面 -> security.csp.enable-> false)或者有一些禁用 CSP 的擴展。
uj5u.com熱心網友回復:
所以不同的 Windows/Linux 行為來自在我的 Linux Firefox 中運行的實驗室插件。我必須與插件作者核實為什么unsafe-inline需要。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/348526.html
下一篇:我從哪里得到0的輸出?
