php如何解决跨域问题
程序员文章站
2022-03-03 15:00:36
...
什么是跨域?
跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器施加的安全限制。
所谓同源是指,域名,协议,端口均相同。
1、允许所有域名访问
header('Access-Control-Allow-Origin: *');
2、允许单个域名访问
header('Access-Control-Allow-Origin: https://test.com');
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如何解决跨域问题的详细内容,更多请关注其它相关文章!
上一篇: css3是什么技术
推荐阅读
-
vue-cli3 中跨域解决方案
-
公司接了一个PHP的项目,准备选一套开源的Framework,牛人给推荐一下,该如何解决
-
PHP如何利用P3P实现跨域
-
二招解决php乱码问题_PHP教程
-
PHP iconv 解决utf-8和gb2312编码转换问题_php技巧
-
php出现内存位置访问无效错误问题解决方法_PHP
-
php中使用addslashes函数报错问题的解决方法_PHP
-
php如何实现ppt转图片以及php调用com组件问题的详细介绍
-
php警告Creating default object from empty value 问题的解决方法
-
PHP IE中下载附件问题解决方法_PHP教程