首頁 >web前端 >js教程 >如何修復「Access-Control-Allow-Origin 不允許來源」錯誤?

如何修復「Access-Control-Allow-Origin 不允許來源」錯誤?

DDD
DDD原創
2024-12-16 11:19:11737瀏覽

How to Fix the

存取跨來源資源:解決「Access-Control-Allow-Origin 不允許來源」錯誤

對於下列應用程式使用Ajax 要求與跨不同網域的遠端伺服器進行通訊時,可怕的「Access-Control-Allow-Origin 不允許來源」錯誤是一個常見的障礙。當應用程式嘗試向與應用程式來源不同的網域發出請求,且伺服器未配置為允許跨來源存取時,就會發生這種情況。

解決此問題,我們可以修改伺服器回應標頭以包含「存取控制允許來源」參數。此參數指定允許向伺服器發出跨來源請求的網域或 URI。

使用PHP 設定回應標頭

對於PHP,回應標頭可以使用header() 函數設置,如下:

<?php header('Access-Control-Allow-Origin: *'); ?>

中的星號(*) “Access-Control-Allow-Origin”標頭指示伺服器將允許來自任何來源的請求。或者,您可以將星號替換為所需的域來將特定來源列入白名單,例如:

<?php header('Access-Control-Allow-Origin: http://example.com'); ?>

警告:安全影響

重要的是要注意,允許沒有特定來源白名單的跨網域存取會帶來安全風險。透過使用通配符“*”,您的應用程式可能會遭受跨網站腳本 (XSS) 和其他攻擊。因此,僅允許來自受信任來源的存取至關重要。

以上是如何修復「Access-Control-Allow-Origin 不允許來源」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn