iisnginx环境一次奇怪的跨域问题解决经过


跨域问题描述:

iis网站跨域、nginx 网站跨域 都已配置,访问接口依然出现跨域问题。


错误提示:

ccess to XMLHttpRequest at ‘https://xxx.com/gameapi/preserve/get/status’ from origin ‘https://cdn.xxx.com’ has been blocked by CORS policy: Response to preflight request doesn’t pass access control check: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.


在这里插入图片描述


从上面这个报错可知,需要在api.xxx.com这个域名下,添加跨域请求来源 。

报错中看,配置的跨域来源Access-Control-Allow-Origin,value是’*, *',需要检查这个域名api.xxxx.com的Access-Control-Allow-Origin设置项。


原因分析:

(1)、iis http 响应标头已配置 Access-Control-Allow-Origin 值为*

在这里插入图片描述


(2)、niginx 响应标头已配置 Access-Control-Allow-Origin 值为*

在这里插入图片描述


以上均已配置 Access-Control-Allow-Origin 值为* ,可是为什么还会出现上面那个错误呢?

结合资料: https://www.cnblogs.com/hellxz/p/16208188.html 这篇解决类似跨域问题的文章中提到 ,原因是设置了2次重复跨域响应头问题。

由此,我们可能也是同样的原因,为了验证这个问题。


(3)、浏览器窗口中,单独访问接口 。

果然出现了 两条 Access-Control-Allow-Origin 值为* 的记录,如下图所示:

在这里插入图片描述


那根据错误就确定了问题的原因就是:Access-Control-Allow-Origin 响应头重复设置导致跨域设置失败。


解决方法: 保持跨域头Access-Control-Allow-Origin只有一个。


第一步,找到项目开发人员,确认是不是代码中 ,添加了解决跨域的响应头,回复是确定设置了:


在这里插入图片描述


既然代码已经设置,那就保留代码中的设置,我们只需要 调整 nginx 及 iis 环境中的 配置即可。

第二步,修改Nginx的配置,如下注释掉两行配置并reload

在这里插入图片描述


第三步,删除iis 跨域配置,删除后如下:

在这里插入图片描述


至此,问题得以解决。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/13408.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python简易信息管理系统

我们将通过一个实例来探讨如何使用Python与MySQL数据库进行交互,以构建一个简单的学生信息管理系统。这个系统将能够执行基本的CRUD(创建(Create)、读取(Retrieve)、更新(Update)、删除(Delete))操作,以管理学生信息。我们将使用m…

Python爬虫-批量爬取新能源汽车上牌量

前言 本文是该专栏的第27篇,后面会持续分享python爬虫干货知识,记得关注。 最近粉丝朋友咨询新能源汽车上牌量数据的爬取方法,对此在本文中,笔者以某汽车平台为例,通过python来实现对“新能源汽车上牌量”的数据进行抓取。 具体实现思路和详细逻辑,笔者将在正文结合完整…

三丰云搭建QQ-bot的服务器-代码实现(3)

网址:https://www.sanfengyun.com >> 三丰云免费云服务器 代码实现 书接上回装饰器,显而易见,只有装饰器还不完善,所以我们接着来补充代码 首先定义一个 MyClient 类 class MyClient(botpy.Client):async def on_ready(…

Nacos :安装配置、服务注册

目录 一、中文官网 二、配置 1、application.properties 2、启动 Nacos 服务 3、访问 Nacos 三、服务注册 1、配置Nacos客户端的pom依赖 2、添加服务配置信息 3、添加 Nacos 启动注解 一、中文官网 Nacos官网 | Nacos 官方社区 | Nacos 下载 | Nacos 下载后直接解压…

0X JavaSE-- ( 遍历-- for each、Iterator 、)、

for each for each 语句是 JDK5 的新特征,主要用于遍历数组、集合。 // collection 可以是数组/实现了 Iterable 接口的集合类 for(dataType variable : collection){ // 使用 item 进行操作 } // 遍历二维数组// 初始化一个二维数组int[][] array {{1, 2, 3},{4…

GO语言核心30讲 实战与应用 (io包,bufio包,os包,网络服务,http,性能分析)

原站地址:Go语言核心36讲_Golang_Go语言-极客时间 一、io包中的接口和工具 1. strings.Builder、strings.Reader 和 bytes.Buffer 这些类型实现了 io 包的很多接口,目的是什么? 是为了提高不同程序实体之间的互操作性。 程序实体是指比如网…

浏览器插件Video Speed Controller(视频倍速播放),与网页自身快捷键冲突/重复/叠加的解决办法

浏览器插件Video Speed Controller(视频倍速播放),与网站自身快捷键冲突/重复/叠加的解决办法 插件介绍问题曾今尝试的办法今日发现插件列表中打开Video Speed Controller的设置设置页面翻到下面,打开实验性功能。将需要屏蔽的原网…

网络工程师----第三十一天

DNS: DNS含义:DNS 是 Domain Name System(域名解析系统) 端口号:DNS为53(UDP) 域名的层次结构: 域名的分级: 域名服务器: 域名解析过程: 递归查…

PHP xdebug

使用场景 一台MAC上安装了phpstorm,虚拟机安装了对应的web程序,需要调试。 坑点,网上教程太多,不如看官网,需要按照xdebug版本来配置php.ini https://www.jetbrains.com/help/phpstorm/2023.3/configuring-xdebug.htm…

【Java】HOT100+代码随想录 动态规划(上)背包问题

目录 理论基础 一、基础题目 LeetCode509:斐波那契数 LeetCode70:爬楼梯 LeetCode746:使用最小花费爬楼梯 LeetCode62:不同路径 LeetCode63:不同路径ii LeetCode343:整数拆分 LeetCode96:不…

vue uniapp 小程序 判断日期是今天(显示时分秒)、昨天、本周的周几、超出本周显示年月日

效果图: util.js /*** 转换时间*/ const messageFormat (datetime) >{ let result "";let currentTime new Date();if(isToday(datetime)){result datetime.substring(11,16);}else if(isYesterday(datetime)){result "昨天";}else if(…

分层解耦-三层架构

分层解耦-三层架构 Controller:控制层,接收前端发送的请求,对请求进行处理,并响应数据 service:业务逻辑层,处理具体的业务逻辑 dao:数据访问层(持久层),负…

python爬虫[简易版]

python爬数据[简易版] 对于每个网站的爬的原理基本是一样的,但是具体的代码写法的区别就在于爬的数据中解析出想要的数据格式: 以爬取有道词典中的图片为例: 第一步:打开网站,分析图片的数据源来自哪里, https://dict-subsidiary.youdao.com/home/content?invalid&pre…

操作系统磁盘管理类问题

例题:在磁盘上存储数据的排列方式会影响1/0服务的总时间。假设每个磁道被划分成10个物理块,每个物理块存放1个逻辑记录。逻辑记录R1,R2....R10存放在同一个磁道上,记录的排列顺序如下表所示: 假定磁盘的旋转速度为10ms/周&#xf…

VMware虚拟机-安装程序无法自动安装virtual machine......_windows server 2008 R2

系统版本:windows server 2008 R2 问题-安装程序无法自动安装virtual machine… 在使用虚拟机安装windows server 2008 R2系统中,安装VMware Tools工具安祖啊寄给你失败,提示安装程序无法自动安装virtual machine…,必须手动安装…

从源头到洞察:大数据时代的数据提取与分析实战指南

随着科技的飞速发展,大数据已经成为现代社会的核心驱动力之一。从商业决策到科学研究,从政策制定到个人生活,数据无处不在,影响着我们的每一个决策。然而,如何从海量的数据中提取有价值的信息,并转化为深刻…

List类

什么是 List 在集合框架中, List 是一个接口,继承自 Collection 。 Collection 也是一个接口 ,该接口中规范了后序容器中常用的一些方法,具体如下所示: List 中提供了好的方法,具体如下: List…

Conda 常用命令大全

Conda 常用命令大全 配置源conda配置清华源pip配置清华源pip配置阿里源 环境管理创建一个新的虚拟环境列出虚拟环境激活虚拟环境退出虚拟环境删除虚拟环境复制某个虚拟环境 conda包管理列出全部包安装包卸载包 pip包管理列出全部包安装包卸载包 其他命令查询 conda 版本查看环境…

python发票真伪查验开发文档、票据OCR、数电票查验

想象一下,只需一行行简洁的代码,复杂繁琐的发票审核工作瞬间变得井然有序。翔云发票查验开发文档详尽易懂,即便是Python新手也能迅速上手,搭建起自己的发票真伪查验系统。无论是纸质发票的扫描图像,还是电子发票的数据…

C语言详解:数组指针

数组指针是指针 int* p[10] 这是指针数组的写法 ,因为【】的优先级比*高, 所以为了解决优先级问题,加() int(* p)[10]&arr;//数组的地址要存起来 说明p是指针(首先与*结合)&#xff0c…