首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何允许[PHP]中的交叉原点

如何允许[PHP]中的交叉原点
EN

Stack Overflow用户
提问于 2017-06-10 19:22:06
回答 1查看 11.6K关注 0票数 2

我有两个域名。

我尝试使用window.open JavaScript标签从域1中的域2中打开一个URL,在用户在域2上做了一些工作人员之后,使用window.opener将结果放到域1上的div中,所有操作都很好,但是在最后一步,我在铬控制台中得到了跨原点错误Uncaught DOMException: Blocked a frame with origin "http://example.com" from accessing a cross-origin.

如何允许在PHP中访问域1上的跨源?

编辑

我的问题不可能是this question的重复,因为我询问的是PHP。

溶液

打开header("Access-Control-Allow-Origin: *");标签后,只需在代码的开头添加PHP,这将允许从任何来源(网站)访问。

如果要限制访问权限,请将*替换为header("Access-Control-Allow-Origin: http://example.com/"); (网站) url。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-10 19:24:15

代码语言:javascript
运行
复制
<?php
    // Allow from any origin
    if (isset($_SERVER['HTTP_ORIGIN'])) {
        header("Access-Control-Allow-Origin: {$_SERVER['HTTP_ORIGIN']}");
        header('Access-Control-Allow-Credentials: true');
        header('Access-Control-Max-Age: 86400');    // cache for 1 day
    }

    // Access-Control headers are received during OPTIONS requests
    if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') {

        if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_METHOD']))
            header("Access-Control-Allow-Methods: GET, POST, OPTIONS");         

        if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']))
            header("Access-Control-Allow-Headers:        {$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}");

        exit(0);
    }

?>
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44477208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档