针对 PHP 语言设置多域名允许跨域访问

服务器变量:

  • 服务器变量存储在 $_SERVER 数组中,在这个数组中有一个特殊的键值:HTTP_ORIGIN。这个键只在跨域的时候才会存在值,同源时为空字符串

    响应头设置允许某域名访问:access-control-allow-origin

    • header 函数可以设置允许某域名跨域访问,形式header(‘access_control_allow_origin:*‘)。

      贴代码:

      $allow_origin = array(
      'a.baidu.com',
      'b.baidu.com',
      );
      //跨域访问的时候才会存在此字段
      $origin = isset($_SERVER['HTTP_ORIGIN']) ? $_SERVER['HTTP_ORIGIN'] : '';  
      if (in_array($origin, $allow_origin)) {
      header('Access-Control-Allow-Origin:' . $origin);
      } else {
      return;
      }
      

note:通过接口工具请求接口时 $_SERVER[‘HTTP_ORIGIN’] 变量也为空字符串。

Comments: 0

「人生在世,留句话给我吧」

提交评论