網上流傳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); }