PHP解決跨域問題
在做專案的過程中經常需要跨域存取。這裡主要介紹 PHP 中怎麼解決跨域問題。
1、允許所有網域存取
header('Access-Control-Allow-Origin: *');
2、允許單一網域存取
header('Access-Control-Allow-Origin: https://test.com');
相關推薦:《PHP教學》
3、允許多個域名存取
在實際專案中最好指定能跨域存取的域名,增加安全性。可以寫在一個公共類別裡面,封裝一個方法呼叫。
// 设置能访问的域名 static public $originarr = [ 'https://test1.com', 'https://test2.com', ]; /** * 公共方法调用 */ static public function setheader() { // 获取当前跨域域名 $origin = isset($_SERVER['HTTP_ORIGIN']) ? $_SERVER['HTTP_ORIGIN'] : ''; if (in_array($origin, self::$originarr)) { // 允许 $originarr 数组内的 域名跨域访问 header('Access-Control-Allow-Origin:' . $origin); // 响应类型 header('Access-Control-Allow-Methods:POST,GET'); // 带 cookie 的跨域访问 header('Access-Control-Allow-Credentials: true'); // 响应头设置 header('Access-Control-Allow-Headers:x-requested-with,Content-Type,X-CSRF-Token'); } }
以上是php怎麼解決跨域的詳細內容。更多資訊請關注PHP中文網其他相關文章!