1. 程式人生 > >瀏覽器控制檯報錯

瀏覽器控制檯報錯

異常問題:瀏覽器關閉連線

Failed to load resource: net::ERR_CONNECTION_CLOSED

異常原因:專案中混用http協議和https協議

解決方案:指示 User Agent 將 HTTP 更改為 HTTPS

                  <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

異常內容:頁面的script標籤內容沒有解析

Refused to execute inline script because it violates the following Content Security Policy directive: "default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'".
 Either the 'unsafe-inline' keyword, a hash ('sha256-FHnVzrXhpOtWrkgyliiAXazqbkNKS+/DFGxknB42YNc='),
 or a nonce ('nonce-...') is required to enable inline execution.
 Note also that 'script-src' was not explicitly set, so 'default-src' is used as a fallback.

異常的原因:Content-Security-Policy的預設配置是default-src 'self'。

解決方案:新增script-src * 'unsafe-inline',對於頁面內部標籤不進行安全驗證。

 <meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *;script-src * 'unsafe-inline'">

終極解決:<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

參考文件:Google內容安全政策

 CSP 提供了一個豐富的政策指令集:

  • script-src 用於控制指令碼對於某個特定頁面所享有的一組許可權。
  • base-uri 用於限制可在頁面的 <base> 元素中顯示的網址。
  • child-src 用於列出適用於工作執行緒和嵌入的幀內容的網址。例如:child-src https://youtube.com 將啟用來自 YouTube(而非其他來源)的嵌入視訊。 使用此指令替代已棄用的 frame-src 指令。
  • connect-src 用於限制可(通過 XHR、WebSockets 和 EventSource)連線的來源。
  • font-src 用於指定可提供網頁字型的來源。Google 的網頁字型可通過 font-src https://themes.googleusercontent.com 啟用。
  • form-action 用於列出可從 <form> 標記提交的有效端點。
  • frame-ancestors 用於指定可嵌入當前頁面的來源。此指令適用於 <frame><iframe><embed> 和 <applet> 標記。此指令不能在 <meta> 標記中使用,並僅適用於非 HTML 資源。
  • frame-src 已棄用。請改用 child-src
  • img-src 用於定義可從中載入影象的來源。
  • media-src 用於限制允許傳輸視訊和音訊的來源。
  • object-src 可對 Flash 和其他外掛進行控制。
  • plugin-types 用於限制頁面可以呼叫的外掛種類。
  • report-uri 用於指定在違反內容安全政策時瀏覽器向其傳送報告的網址。此指令不能用於 <meta> 標記。
  • style-src 是 script-src 版的樣式表。
  • upgrade-insecure-requests 指示 User Agent 將 HTTP 更改為 HTTPS,重寫網址架構。 該指令適用於具有大量舊網址(需要重寫)的網站。