| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> web运维:跨域(NGINX跨域配置为例) -> 正文阅读 |
|
[系统运维]web运维:跨域(NGINX跨域配置为例) |
跨域在现在的web开发中,已经 是一个很常见的场景了,作为运维,也是一个应该掌握的知识点 欢迎关注 龙叔运维 (公众号) 1、什么是跨域:比较官方的解释:
什么意思呢? 就是你浏览器打开的网页? http://aaa.bbb.com,你在这个web页面发起的接口请求的目标地址的协议(http),域名(aaa.bbb.com),端口(80)只要有一个变了,那就是跨域 2、常见跨域的业务场景在系统业务实现过程中,必然会有各种各样的场景遇到跨域问题,例如下面这些: A、前端页面调用第三方后端接口 其实这是不合理的,正常的做法应该是自己的前端调自己的后端,后端去调用别的系统的接口,然后把数据返回给前端。 B、微前端场景 这种场景一般出现在大公司,一个大平台里面每个功能模块都会有单独的团队开发一个独立的web系统,有单独的域名每个集成到大平台的web系统都需要配置跨域,不然大平台就没法正常使用 3、跨域配置跨域的配置一般在被跨域访问的一段配置,跨域配置会作为响应请求头(response header)返回给浏览器,告诉浏览器自己对跨域的配置 这里是以NGINX的配置为例的,你可以在kong网关配置,可以在项目代码后端配置,但是跨域的配置都是类似的 3.1、Access-Control-Allow-OriginAccess-Control-Allow-Origin的字面意思,直译一下:访问控制允许来源 显而易见,这是被访问的服务通过response header中的Access-Control-Allow-Origin告诉浏览器,哪些域名作为源可以跨域访问我 如aaa.test.com 去跨域访问 bbb.test.com 的接口, 那么 bbb.test.com服务就需要配置跨域:
或者也可以直接配置允许所有网站跨域访问自己,但是不安全
如果目标服务没有配置对Access-Control-Allow-Origin,而去跨域访问,则会有如下报错: no 'access-control-allow-origin' header is present on the requested resource
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 18:33:41- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |