針對 PHP
語言設定多域名允許跨域訪問
-
伺服器變數:
- 伺服器變數儲存在
$_SERVER
陣列中,在這個陣列中有一個特殊的鍵值:HTTP_ORIGIN
。這個鍵只在跨域的時候才會存在值,同源時為空字串
- 伺服器變數儲存在
-
響應頭設定允許某域名訪問:
access-control-allow-origin
header
函式可以設定允許某域名跨域訪問,形式為header('access_control_allow_origin:*')
。
-
貼程式碼:
$allow_origin = array( 'a.baidu.com', 'b.baidu.com', ); //跨域訪問的時候才會存在此欄位 $origin = isset($_SERVER['HTTP_ORIGIN']) ? $_SERVER['HTTP_ORIGIN'] : ''; if (in_array($origin, $allow_origin)) { header('Access-Control-Allow-Origin:' . $origin); } else { return; }
note:通過介面工具請求介面時
$_SERVER['HTTP_ORIGIN']
變數也為空字串。