PHP解决跨域问题,指定域名访问

130次阅读
没有评论

共计 987 个字符,预计需要花费 3 分钟才能阅读完成。

浏览器的同源策略,就是出于安全考虑,浏览器会限制从脚本发起的跨域 HTTP 请求。

解决办法:

header("Access-Control-Allow-Origin: *");// 当前跨域域名 * 全部
header("Access-Control-Allow-Methods: GET,POST,PUT,DELETE");// 响应类型
header("Access-Control-Max-Age: 3628800");//Access-Control-Max-Age 用来指定本次预检请求的有效期,单位为秒,,在此期间不用发出另一条预检请求。

允许或者指定单个 域名 访问

header(‘Access-Control-Allow-Origin:https://wanqutv.com’); 
header(‘Access-Control-Allow-Methods:POST’); // 表示只允许 POST 请求 
header(‘Access-Control-Allow-Headers:x-requested-with, content-type’); // 请求头的限制

或者可以限制跨域

// 设置能访问的域名
static public $originarr = [
'https://test1.com',
'https://test2.com',
];
/**
* 公共方法调用
*/
static 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');
}
}
正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-05-16发表,共计987字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)