欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

服务器端PHP允许跨域

程序员文章站 2022-03-16 22:45:06
解决跨域的关键是设置 Access Control Allow Origin 。 例如:客户端的域名是 api.itbsl.com,而请求的域名是www.itbsl.com 如果直接使用ajax访问,会有以下错误: XMLHttpRequest cannot load http://www.itbs ......

解决跨域的关键是设置 access-control-allow-origin
例如:客户端的域名是 api.itbsl.com,而请求的域名是www.itbsl.com
如果直接使用ajax访问,会有以下错误:

xmlhttprequest cannot load . no 'access-control-allow-origin' header is present on the requested resource.origin '' 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://server.runoob.com/server.php文件头部添加如下代码:

header('access-control-allow-origin:*');