1. 文章
  2. 文章详情

PHP解决跨域问题:增加 Access-Control-Allow-Origin 响应头

1、允许所有域名访问
header('Access-Control-Allow-Origin: *');
2、允许单个域名访问
header('Access-Control-Allow-Origin: https://www.aa.com');
3、允许多个域名访问
在实际项目中最好指定能跨域访问的域名,增加安全性。可以写在一个公共类里面,封装一个方法调用。

// 设置能访问的域名
static public $originarr = [
'https://test1.com',
'https://test2.com',
];

/**
* 公共方法调用
*/
public function setheader()
{
// 获取当前跨域域名
$origin = isset($_SERVER['HTTP_ORIGIN']) ? $_SERVER['HTTP_ORIGIN'] : '';
if (in_array($origin, self::$originarr)) {
// 允许 $originarr 数组内的 域名跨域访问
header('Access-Control-Allow-Origin:' . $origin);
// 响应类型
header('Access-Control-Allow-Methods:POST,GET');
// cookie 的跨域访问
header('Access-Control-Allow-Credentials: true');
// 响应头设置
header('Access-Control-Allow-Headers:x-requested-with,Content-Type,X-CSRF-Token');
}
}


发表评论

登录后才能评论

评论列表(0条)