Origin
比對頁面的通訊協定、主機與連接埠。
CROSS-ORIGIN ACCESS
CORS(Cross-Origin Resource Sharing)是瀏覽器執行的跨來源存取規則。伺服器透過 Access-Control-Allow-* 回應標頭說明哪些網頁來源、方法、請求標頭和憑證可以讀取資源。
CORS 不是伺服器端身分驗證,也不會阻止瀏覽器以外的用戶端發出請求;它控制瀏覽器是否把跨來源回應提供給頁面指令碼。
比對頁面的通訊協定、主機與連接埠。
核准方法與請求標頭。
只向可信 Origin 開放資源。
CORS 經常同時經過 CDN、API 閘道、反向代理和應用程式框架。白名單、快取或預檢任一層設定錯誤,都可能導致前端呼叫失敗或敏感資料被不受信任來源讀取。
分別查看 GET 與 OPTIONS,確認來源、方法或標頭授權問題。
檢測任意 Origin 反射與不安全的萬用字元、憑證組合。
檢查 Vary: Origin,降低 CDN 或共享快取混用授權回應的風險。
工具模擬瀏覽器跨來源交握,但不會執行可能修改目標資料的業務請求。
拒絕本機、內網和保留位址,並驗證 GET 重新導向。
攜帶指定 Origin,讀取資源的實際跨來源標頭。
使用獨立探測 Origin 判斷伺服器是否無條件回顯。
檢查方法與標頭是否獲准,不傳送寫入請求。
判斷必須結合資源用途。一般網頁或只供同源呼叫的 API 沒有 CORS 標頭是正常的;只有需要被其他來源的瀏覽器頁面讀取時,阻止狀態才代表功能問題。
指定 Origin 的 GET 和預檢均通過,仍應確認該來源確實可信。
瀏覽器無法完成全部請求;先確認業務是否真的需要跨來源存取。
發現任意來源反射或憑證組合問題,應優先收緊白名單。
不是。一般網頁和只供同源使用的 API 通常不需要 CORS。只有預期被其他來源的瀏覽器頁面讀取時,缺少授權才會造成跨來源功能失敗。
不會。搜尋引擎沒有把 CORS 標頭當作一般排名加分項;正確設定有助於前端功能和資源可用性,但不能取代可抓取 HTML、內容品質與效能。
單次回應不能傳回逗號分隔的多個來源。伺服器應驗證 Origin 並只傳回一個獲准來源,同時設定 Vary: Origin。
非簡單方法、自訂標頭或特定 Content-Type 會先觸發 OPTIONS。即使 GET 允許跨來源,預檢失敗仍會阻止實際請求。
瀏覽器不接受 Access-Control-Allow-Origin: * 與憑證模式同時使用。需要 Cookie 或授權資訊時必須傳回明確、可信的 Origin。
繼續檢查安全回應標頭、SSL 憑證、HTTP 狀態和 DNS 設定。