PHP Ajax 跨域问题最佳解决方案

  • 来源:新网
  • 更新日期:2018-03-23

摘要:本文通过设置Access-Control-Allow-Origin来实现跨域。 如果直接使用ajax访问,会有以下错误: XMLHttpRequest cannot load 在被访问的页面添加如下代码,该页面就可以被不同域名访问了。 1、允许单个域名访问 指定某域名(http://www.xxx.com)跨域访问,则只需在php文件头部添加如下代码: header(\'Access-

本文通过设置Access-Control-Allow-Origin来实现跨域。

如果直接使用ajax访问,会有以下错误:

t01d65b44f84c57be93.jpg

XMLHttpRequest cannot load

在被访问的页面添加如下代码,该页面就可以被不同域名访问了。

1、允许单个域名访问

指定某域名(http://www.xxx.com)跨域访问,则只需在php文件头部添加如下代码:

header(\'Access-Control-Allow-Origin:http://www.xxxx.com\'); 2、允许多个域名访问

指定多个域名(http://www.xxx.com、http://www.xxxx.com等)跨域访问,则只需在php文件头部添加如下代码:

$origin = isset($_SERVER[\'HTTP_ORIGIN\'])? $_SERVER[\'HTTP_ORIGIN\'] : \'\'; $allow_origin = array( \'http://www.xxx.com\', \'http://www.xxxx.com\' ); if(in_array($origin, $allow_origin)){ header(\'Access-Control-Allow-Origin:\'.$origin); } 3、允许所有域名访问

允许所有域名访问则只需在php文件头部添加如下代码:

header(\'Access-Control-Allow-Origin:*\');