帝国模板之家为广大用户提供专业、一站式建站服务。

帝国cms教程

帝国cms教程栏目,提供精品建站,仿站,二次开发,安装,标签使用等图文教程,帮助建设和管理好你的帝国cms站点。

当前位置:首页 > 教程 > 帝国cms教程 > 正文

帝国cms设置多域名允许跨域访问

帝国模板之家 2020-08-31 帝国cms教程 评论

最近浏览知乎,有朋友提问帝国CMS 怎么跨域提交表单?问题描述是这样的现在帝国上有一个表单提交。我在本地创建一个html然后用浏览器打开,可以成功提交表单。上传到这个帝国程序网站下访问也可以提交。但是,我如果将这个html文件跨域放在别的网站下打开进行提交。www.xxx.cn/e/enews/index.php这个页面就没反应。这个问题有什么方法可以解决呢?今天,帝国模板之家小编给大家分享一个方法。

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

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

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

贴代码:

//PHP 设置多域名允许跨域访问
$allow_origin = array(
    'https://www.moyouyouw.cn',
    'https://www.baidu.com',
);
//跨域访问的时候才会存在此字段
$origin = isset($_SERVER['HTTP_ORIGIN']) ? $_SERVER['HTTP_ORIGIN'] : '';  
if (in_array($origin, $allow_origin)) {
    header('Access-Control-Allow-Origin:' . $origin);
} else {
    return;
}

我们在e/enews/index.php头部引入以上代码,就可以解决跨域访问的问题。大家赶紧测试一下吧,更多相关内容请关注帝国模板之家其他文章。

这世上无忧无虑的人,反而相对寿命会长点。

已有 位小伙伴发表了看法

欢迎 发表评论

  • 匿名发表

关于

帝国cms模板

网页插件

帝国模板之家 | www.moyouyouw.cn

本站所有模板/文章除标明原创外,均来自网络转载,版权归原作者所有,如果有侵犯到您的权益,请联系站长删除,谢谢! 寻找帝国cms模板首选帝国模板之家,用心做站,上线至今广受好评,值得信赖!

  • 交流群1:帝国cms交流群1
  • 交流群2:帝国cms交流群2
在线QQ 给我留言