Nginx静态服务
1.什么是静态资源![]()
2.cdn架构:
内容分发网络(Content Delivery Network,CDN)是一种网络架构,旨在提高用户对互联网上内容的访问速度和性能。CDN通过在全球各地部署大量的服务器节点,将内容缓存到离用户更近的服务器上,从而减少内容传输的距离,提高访问速度和响应时间。当用户请求访问某个网站或应用程序时,CDN会自动选择距离用户最近的服务器节点,从该节点提供内容,而不是直接从原始服务器获取内容。
3.静态资源配置语法
sendfile
在 Nginx 中,sendfile 是一个高效的静态文件传输优化指令,它利用操作系统内核的 sendfile() 系统调用来直接在磁盘和网络接口之间传输数据,绕过用户空间的拷贝,从而显著提升性能。在配置文件里面通过sendfile的on和off来配置。
原理及作用
####1.零拷贝技术
文件数据直接从磁盘通过内核空间发送到网卡,无需经过用户空间(Nginx 进程)中转,减少 CPU 和内存开销。
####2.提升大文件传输性能
尤其对静态文件(如图片、视频、下载包等)的传输速度有显著优化。
tcp_nopush
用于提高网络传输效率,**先存满缓存区再发送数据,提高网络的传输效率**
tcp_nodelay
用于提高网络传输的实时性
静态资源文件压缩:gzip压缩节约带宽,并提⾼响应⾄客户端的速度。
实例对比(压缩前和压缩后):
未打开gzip的配置文件
压缩前的图片大小:
压缩后的图片大小:
静态资源浏览器缓存
通过location域里面添加expires 时间来配置
实例对比:
配置前:
配置后:
配置文件
静态资源跨域访问
什么是跨域:
*跨域(Cross-Origin)是指在 Web 开发中,一个网页的运行脚本试图访问另一个网页的资源时,这两个网页的域名、协议或端口号任何一个不同,就被称为跨域。跨域是由浏览器的同源策略(Same-Origin Policy)所限制的。同源策略是一种安全机制,它防止一个网页的脚本去读取另一个不同域名的网页内容。同源策略要求两个网页的协议、主机和端口号必须完全相同,否则就会出现跨域问题。简单来说,同源策略要求不同域名的网页之间不能相互访问对方的资源。*
参考:https://blog.csdn.net/weixin_51759592/article/details/137077658?fromshare=blogdetail&sharetype=blogdetail&sharerId=137077658&sharerefer=PC&sharesource=weixin_51680039&sharefrom=from_link
实例:
####未配置跨域之前
未配置之前的配置文件:
调用跨域的网站的配置文件:
被调用的网站的配置文件:
效果: