经实测解决Access-Control-Allow-Origin多域名跨域问题
Posted 老松壳
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了经实测解决Access-Control-Allow-Origin多域名跨域问题相关的知识,希望对你有一定的参考价值。
网上流传2种方法解决多域名跨域问题:1、Access-Control-Allow-Origin:[域名一],[域名二]; 2、用$_SERVER("HTTP_ORIGIN")获取来源地址,判断该域名是否属于允许跨域的域名数组,如果是则设置:Access-Control-Allow-Origin:$_SERVER("HTTP_ORIGIN")。
经实测第一种方法完全无效,第二种方法$_SERVER("HTTP_ORIGIN")并不总能获取来源地址,如果是Apache服务器需设置 .htaccess 文件,并且在IE9(IE10+没试过)浏览器下无论如何获取不到$_SERVER("HTTP_ORIGIN")。
其实解决办法很简单,如下代码:
$allow_origin = array( "https://www.baidu.com", "https://www.google.com" ); foreach ($allow_origin as $k=>$v) { header("Access-Control-Allow-Origin:".$v); }
以上是关于经实测解决Access-Control-Allow-Origin多域名跨域问题的主要内容,如果未能解决你的问题,请参考以下文章
Linux运维--企业sudo权限规划详解 (实测一个堆命令搞定)