PHP Ajax跨域问题解决方案代码实例


Posted in PHP onAugust 01, 2020

本文通过设置Access-Control-Allow-Origin来实现跨域。

例如:客户端的域名是client.runoob.com,而请求的域名是server.runoob.com。

如果直接使用ajax访问,会有以下错误:

XMLHttpRequest cannot load http://server.runoob.com/server.php. No 'Access-Control-Allow-Origin' header is present on the requested resource.Origin 'http://client.runoob.com' is therefore not allowed access.

1、允许单个域名访问

指定某域名(http://client.runoob.com)跨域访问,则只需在http://server.runoob.com/server.php文件头部添加如下代码:

header('Access-Control-Allow-Origin:http://client.runoob.com');

2、允许多个域名访问

指定多个域名(http://client1.runoob.com、http://client2.runoob.com等)跨域访问,则只需在http://server.runoob.com/server.php文件头部添加如下代码:

$origin = isset($_SERVER['HTTP_ORIGIN'])? $_SERVER['HTTP_ORIGIN'] : ''; 
 
$allow_origin = array( 
  'http://client1.runoob.com', 
  'http://client2.runoob.com' 
); 
 
if(in_array($origin, $allow_origin)){ 
  header('Access-Control-Allow-Origin:'.$origin);    
}

3、允许所有域名访问

允许所有域名访问则只需在http://server.runoob.com/server.php文件头部添加如下代码:

header('Access-Control-Allow-Origin:*');

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
社区(php&&mysql)二
Oct 09 PHP
Apache, PHP在Windows 9x/NT下的安装与配置 (二)
Oct 09 PHP
PHP计划任务之关闭浏览器后仍然继续执行的函数
Jul 22 PHP
php中使用addslashes函数报错问题的解决方法
Feb 06 PHP
php二维数组用键名分组相加实例函数
Nov 06 PHP
php中使用getimagesize获取图片、flash等文件的尺寸信息实例
Apr 29 PHP
PHP简单实现断点续传下载的方法
Sep 25 PHP
优化WordPress的Google字体以加速国内服务器上的运行
Nov 24 PHP
注释PHP和html混合代码的小技巧(分享)
Nov 03 PHP
PHP实现的简单AES加密解密算法实例
May 29 PHP
PHP7 安装event扩展的实现方法
Oct 08 PHP
thinkphp5 模型实例化获得数据对象的教程
Oct 18 PHP
PHP生成图表pChart的示例解析
Jul 31 #PHP
基于php伪静态的实现方法解析
Jul 31 #PHP
PHP底层运行机制与工作原理详解
Jul 31 #PHP
如何通过Apache在本地配置多个虚拟主机
Jul 29 #PHP
PHP网页缓存技术优点及代码实例
Jul 29 #PHP
phpStudy vscode 搭建debug调试的教程详解
Jul 28 #PHP
jQuery+PHP实现图片上传并提交功能
Jul 27 #PHP
You might like
谈谈PHP语法(5)
2006/10/09 PHP
表单提交错误后返回内容消失问题的解决方法(PHP网站)
2015/10/20 PHP
php实现面包屑导航例子分享
2015/12/19 PHP
Yii框架使用魔术方法实现跨文件调用功能示例
2017/05/20 PHP
JavaScript 10件让人费解的事情
2010/02/15 Javascript
改善用户体验的五款jQuery插件分享
2011/05/22 Javascript
键盘KeyCode值列表汇总
2013/11/26 Javascript
JavaScript极简入门教程(一):基础篇
2014/10/25 Javascript
javascript强制点击广告的方法
2015/02/06 Javascript
JavaScript删除数组元素的方法
2015/03/20 Javascript
利用angularjs1.4制作的简易滑动门效果
2017/02/28 Javascript
Vue.2.0.5过渡效果使用技巧
2017/03/16 Javascript
WdatePicker.js时间日期插件的使用方法
2017/07/26 Javascript
vue动态路由配置及路由传参的方式
2018/05/23 Javascript
Vue 重置组件到初始状态的方法示例
2018/10/10 Javascript
使用webpack打包后的vue项目如何正确运行(express)
2018/10/26 Javascript
JS实现的Object数组去重功能示例【数组成员为Object对象】
2019/02/01 Javascript
vue中input的v-model清空操作
2019/09/06 Javascript
详解BootStrap表单验证中重置BootStrap-select验证提示不清除的坑
2019/09/17 Javascript
uploadify插件实现多个图片上传并预览
2019/09/30 Javascript
使用JavaScript实现贪吃蛇游戏
2020/09/29 Javascript
vue单元格多列合并的实现
2020/11/26 Vue.js
浅析Python中signal包的使用
2015/11/13 Python
CentOS7.3编译安装Python3.6.2的方法
2018/01/22 Python
记一次python 内存泄漏问题及解决过程
2018/11/29 Python
基于wxPython的GUI实现输入对话框(1)
2019/02/27 Python
python binascii 进制转换实例
2019/06/12 Python
python 利用已有Ner模型进行数据清洗合并代码
2019/12/24 Python
html5 Canvas画图教程(8)—canvas里画曲线之bezierCurveTo方法
2013/01/09 HTML / CSS
shell程序中如何注释
2012/02/17 面试题
函授毕业个人自我评价
2014/02/20 职场文书
2014年父亲节活动方案
2014/03/06 职场文书
2015年度残疾人工作总结
2015/05/14 职场文书
XX部保密工作制度范本
2019/08/27 职场文书
Python list去重且保持原顺序不变的方法
2021/04/03 Python
Python趣味挑战之给幼儿园弟弟生成1000道算术题
2021/05/28 Python