首頁 >後端開發 >PHP問題 >伺服器端php設定允許跨域的方法

伺服器端php設定允許跨域的方法

L
L原創
2020-05-30 16:59:465394瀏覽

伺服器端php設定允許跨域的方法

伺服器端php設定允許跨網域

解決跨網域的關鍵是設定 Access-Control-Allow-Origin。
例如:客戶端的網域是api.itbsl.com,而請求的網域是www.itbsl.com
如果直接使用ajax訪問,會有以下錯誤:

XMLHttpRequest cannot load http://www.itbsl.com/server.php. No 'Access-Control-Allow-Origin' header is present on the requested resource.Origin 'http://api.itbsl.com' is therefore not allowed access .

1.允許單一網域訪問
指定某網域http://api.itbsl.com跨網域訪問,只需在http://www.itbsl.com/server .php檔案頭新增以下程式碼:

header('Access-Control-Allow-Origin:http://api.itbsl.com');

2.允許多個網域存取
指定多個網域 http://api.itbsl.com、http://doc.itbsl.com等跨域訪問,則只需在http://www.itbsl.com/server.php檔案頭添加如下程式碼:

$origin = isset($_SERVER['HTTP_ORIGIN'])? $_SERVER['HTTP_ORIGIN'] : '';   
$allow_origin = array(      'http://api.itbsl.com',      'http://doc.itbsl.com'  );    
if(in_array($origin, $allow_origin)){  
    header('Access-Control-Allow-Origin:'.$origin);    
}

3.允許所有網域存取
允許所有域名訪問則只需在http://www.itbsl.com/server.php檔案頭中加入以下程式碼:

header('Access-Control-Allow-Origin:*');

推薦教學:《PHP教學

以上是伺服器端php設定允許跨域的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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