這篇文章主要介紹了php怎樣解決跨域問題,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
成都創(chuàng)新互聯(lián)一直秉承“誠信做人,踏實做事”的原則,不欺瞞客戶,是我們最起碼的底線! 以服務(wù)為基礎(chǔ),以質(zhì)量求生存,以技術(shù)求發(fā)展,成交一個客戶多一個朋友!為您提供成都網(wǎng)站設(shè)計、成都網(wǎng)站制作、成都網(wǎng)頁設(shè)計、小程序定制開發(fā)、成都網(wǎng)站開發(fā)、成都網(wǎng)站制作、成都軟件開發(fā)、成都APP應(yīng)用開發(fā)是成都本地專業(yè)的網(wǎng)站建設(shè)和網(wǎng)站設(shè)計公司,等你一起來見證!
什么是跨域?
跨域,指的是瀏覽器不能執(zhí)行其他網(wǎng)站的腳本。它是由瀏覽器的同源策略造成的,是瀏覽器施加的安全限制。
所謂同源是指,域名,協(xié)議,端口均相同。
1、允許所有域名訪問
header('Access-Control-Allow-Origin: *');
2、允許單個域名訪問
header('Access-Control-Allow-Origin: https://test.com');
3、允許多個域名訪問
在實際項目中最好指定能跨域訪問的域名,增加安全性??梢詫懺谝粋€公共類里面,封裝一個方法調(diào)用。
// 設(shè)置能訪問的域名 static public $originarr = [ 'https://test1.com', 'https://test2.com', ]; /** * 公共方法調(diào)用 */ static public function setheader() { // 獲取當(dāng)前跨域域名 $origin = isset($_SERVER['HTTP_ORIGIN']) ? $_SERVER['HTTP_ORIGIN'] : ''; if (in_array($origin, self::$originarr)) { // 允許 $originarr 數(shù)組內(nèi)的 域名跨域訪問 header('Access-Control-Allow-Origin:' . $origin); // 響應(yīng)類型 header('Access-Control-Allow-Methods:POST,GET'); // 帶 cookie 的跨域訪問 header('Access-Control-Allow-Credentials: true'); // 響應(yīng)頭設(shè)置 header('Access-Control-Allow-Headers:x-requested-with,Content-Type,X-CSRF-Token'); } }
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“php怎樣解決跨域問題”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!