# SpringBoot3教程 - 16 跨域配置

# 16.1 概念解释

# 16.1 什么是动静分离

动静分离是指在Web服务器架构中,将静态页面和动态内容接口分为不同系统的架构设计方法。

目前比较常用的方式是:将静态资源(如HTML、CSS、JavaScript、图像文件等)使用 Nginx 来部署,页面上展示的动态数据内容使用后端的 SpringBoot 接口来提供。

使用动静分离有如下优势:

  • 性能优化:静态内容通常可以通过 CDN(内容分发网络)进行缓存和分发,减轻服务器负担,加快用户访问速度。
  • 资源利用:动态内容和静态内容由不同的服务器处理,可以根据各自的需求进行优化,充分利用服务器资源。
  • 安全性:将动态和静态内容分离,可以减少服务器暴露在外的攻击面,提高整体安全性。
  • 维护性:静态资源可以独立更新,不影响动态内容的生成和处理,提高网站的可维护性。

# 16.2 什么是跨域

跨域(Cross-Origin)是指浏览器的同源策略(Same-Origin Policy),同源策略是浏览器的一种安全策略,浏览器会限制了从一个域(域名、协议和端口相同)加载的文档或脚本去访问另一个不同域的资源。这种限制是为了防止一个网站恶意读取另一个网站的敏感信息。


例如:A网站保存了一些敏感的Cookie信息,如果没有同源限制,B网站就可以读取A网站的Cookie内容了,敏感数据就会泄露,并且冒充用户访问A网站。所以在一个网站中,是无法通过Javascript访问另一个不同域(协议、域名、端口不同)的网站的接口的。

以下 URL 都被认为是不同的源:

内容未完......