1. 程式人生 > 實用技巧 >PHP跨域解決

PHP跨域解決

先來了解一下什麼是跨域:

1.什麼是跨域?跨域:指的是瀏覽器不能執行其他網站的指令碼。它是由瀏覽器的同源策略造成的,是瀏覽器對javascript施加的安全限制。例如:a頁面想獲取b頁面資源,如果a、b頁面的協議、域名、埠、子域名不同,所進行的訪問行動都是跨域的,而瀏覽器為了安全問題一般都限制了跨域訪問,也就是不允許跨域請求資源。注意:跨域限制訪問,其實是瀏覽器的限制。理解這一點很重要!!!同源策略:是指協議,域名,埠都要相同,其中有一個不同都會產生跨域;

限制域名

1、允許單個域名訪問

header('Access-Control-Allow-Origin:https://blog.oioweb.cn');

2、允許多個域名訪問

$origin = isset($_SERVER['HTTP_ORIGIN'])? $_SERVER['HTTP_ORIGIN'] : '';
$allow_origin = array('https://blog.oioweb.cn','https://my.oioweb.cn');    
if(in_array($origin, $allow_origin)){
    header('Access-Control-Allow-Origin:'.$origin);
}

3、允許所有域名訪問

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