首頁 >後端開發 >PHP問題 >php怎麼設定可跨域

php怎麼設定可跨域

王林
王林原創
2021-07-07 13:48:2420011瀏覽

php設定可跨域的方法是,直接在php檔案頭上新增【header("Access-Control-Allow-Origin: *");】語句,這樣就可以允許所有位址跨域請求。

php怎麼設定可跨域

本文操作環境:windows10系統、php 7.3、thinkpad t480電腦。

php設定允許跨網域存取可以有三種方式,具體方法如下所示:

方式一:

header("Access-Control-Allow-Origin: *");//允许所有地址跨域请求

方式二:

header("Access-Control-Allow-Origin: http://localhost:8080");//指定某个地址可以跨域请求,这里只能指定一个

方式三:如果要允許多個位址跨域請求可以這樣寫

$origin = ['http://localhost:8080','http://localhost:8081'];
$AllowOrigin = 'http://localhost:8080';
if(in_array($_SERVER["HTTP_ORIGIN"],$origin))
{
    $AllowOrigin = $_SERVER["HTTP_ORIGIN"];
}
header("Access-Control-Allow-Origin: ".$AllowOrigin );

設定允許的請求方法,可以用*表示所有,header("Access-Control-Allow -Methods: POST"); 

如果允許請求攜帶cookie,此時origin配置不能用*,此時前端似乎也要做配置,讓請求中攜帶cookieheader('Access-Control-Allow-Credentials :true');

設定允許跨域的請求頭,通常會在請求頭裡面加登入驗證訊息,那麼服務端需要指定允許那些請求頭,這裡不能用*,多個欄位用逗號隔開。 header('Access-Control-Allow-Headers:token');

相關推薦:php影片教學

以上是php怎麼設定可跨域的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn