针对 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'] 变量也为空字符串。
推荐教程:PHP教程