首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用nginx缓存服务器上的静态文件

一、nginx缓存的优点 ? 如图所示,nginx缓存,可以在一定程度上,减少源服务器的处理请求压力。 因为静态文件(比如css,js, 图片)中,很多都是不经常更新的。...nginx使用proxy_cache将用户的请求缓存到本地一个目录。下一个相同请求可以直接调取缓存文件,就不用去请求服务器了。 毕竟,IO密集型服务的处理是nginx的强项。...80端口对接的是普通的域名(http://wangxiaokai.vip)访问。 90端口负责处理80端口代理过来的资源访问。 相当于90端口是源服务器,80端口是nginx反向缓存代理服务器。...proxy_temp_file_write_size 设置nginx每次写数据到临时文件的size(大小)限制 proxy_temp_path 从后端服务器接收的临时文件的存放路径 proxy_cache_path...四、参考 [1] nginx文档 [2] nginx反向缓存代理详解 [3] Nginx缓存服务器静态文件 五、后记 我的GitHub仓库 Give me a star,if it’s work out

5K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    使用nginx缓存服务器上的静态文件

    一、nginx缓存的优点 图片 如图所示,nginx缓存,可以在一定程度上,减少源服务器的处理请求压力。 因为静态文件(比如css,js, 图片)中,很多都是不经常更新的。...nginx使用proxy_cache将用户的请求缓存到本地一个目录。下一个相同请求可以直接调取缓存文件,就不用去请求服务器了。 毕竟,IO密集型服务的处理是nginx的强项。...相当于90端口是源服务器,80端口是nginx反向缓存代理服务器。...proxy_temp_file_write_size 设置nginx每次写数据到临时文件的size(大小)限制 proxy_temp_path 从后端服务器接收的临时文件的存放路径 proxy_cache_path...当解析到上述文件名结尾的静态资源,会到缓存区获取静态资源。 如果获取到对应资源,则直接返回数据。 如果获取不到,则将请求转发给proxy_pass指向的地址进行处理。

    4.1K20

    微服务的边界 (粒度) 是 决策, 而不是个 标准答案

    微服务的边界 (粒度) 是 "决策",而不是个 "标准答案"。 许多人面对微服务时,往往都会纠结着一个问题:微服务太小?太大?...其实,会纠结在这个问题上,最根本的原因便是误解了微服务粒度划分这件事的本质;微服务划分本身是 "架构设计"。也就是说微服务划分本身绝不是一个只讲"太大"或 "太小"标准答案的 "是非题"。...而是需综合考量以下的因素,所作出的一个 "架构决策": 1. 市场业务的扩展性 2. 与已有架构间的冲突 3. 开发团队在开发上所可能面临的风险 4....测试人员测试执行的效率 所以,请不要再简单粗暴的便脱口而出:你的微服务划得太细、太小......而是应该将各微服务划分的方式,深度思考,周全的考量各方面的因素下,所作出的一个 ”最适合” 的架构决策,而不是一个人芸亦芸的 ”标准答案”。 ?

    1.5K60

    Nginx(四):http服务器静态文件查找的实现

    我们以访问一个普通文件为例,nginx到底是如何找到这个文件并返回信息的呢?它会不会有些什么限制呢?...就让我们一起来探秘nginx文件的查找实现吧! 0. nginx 静态文件配置 要配置静态文件处理,只需在http server中配置root路径即可。...这也是nginx灵活性的体现。不过我们不想关注太多。 文件的查找是在 static_module 中完成的,我们只需关注这个即可。 2....只处理 get/head请求,对文件内容无变化情况将会返回304。上面更多的是,只限于c语言的表达能力问题,做的许多变化,无须多看。 对于静态文件的处理,后续所有给定的参数都将被忽略掉。...另外,再次需要说明的一点是,nginx的性能优势是在于其巧妙地利用系统的非阻塞io,从而提升了处理能力,而且其扩展能力非常强,配置也非常友好。但其整体流程,与其他http服务器并无二致。

    1.9K30

    为什么 C# 的 string.Empty 是一个静态只读字段,而不是一个常量呢?

    进一步可以发现 string.Empty 实际上是一个静态只读字段,而不是一个常量。 为什么这个看起来最适合是常量的 string.Empty,竟然使用静态只读字段呢?...也就是说,string.Empty 字段并不是一个普通的字段,对它的调用会被特殊处理。但是是如何特殊处理呢?...翻译过来是: Empty 常量保存的是空字符串的值,它在启动期间由执行引擎初始化。它被 JIT 视为内在的,因此静态构造函数永远不会运行。将它保持为未初始化的状态将会使得调试器难以解释此行为。...SetObjectReference( pEmptyStringHandle, StringObject::GetEmptyString(), this ); 总结:为什么 string.Empty 需要是一个静态只读字段而不是常量...String 类的构造函数(注意不是静态构造函数,String 类的静态构造函数是特殊处理不会调用的); 而如果这是一个静态字段,那么编译器可以在不做特殊处理的情况下,生成 ldsfld string

    1.1K00

    RPO 相对路径覆盖攻击

    漏洞成因: RPO 依赖于浏览器和网络服务器的反应,基于服务器的 Web 缓存技术和配置差异,以及服务器和客户端游览器的解析差异,利用前端代码中加载的 css/js 的相对路径来加载其他文件,最终浏览器将服务器返回的不是...Apache 服务器和 Nginx 服务器对 url 解析差异 Apache 服务器对正常 url 的解析: ? Nginx 服务器对正常 url 的解析: ?...可以看到,Apache 服务器对编码后的 url 不能正常解析,而 Nginx 却可以正常解析。...但其实Apache 服务器不能解析%2f 是默认配置问题,可见:链接包含”%2F”导致mod_rewrite失效 加载相对路径文件差异 在 Nginx 中,服务器可以正常解析 url ,即服务器在加载文件时会解码后找到对应文件返回客户端...RPO 导致信息泄露 Web 服务器欺骗请求: 当目标网站存在负载服务器时, 访问当前页面下,事实上并不存在的 css 等静态文件时,会在缓存服务器中缓存下存在 用户账号密码的静态文件页面,让攻击者可以直接访问用户账号

    2.8K10

    PHP面试题集锦

    2、伪静态不是真正意义上的静态化,之所以使用伪静态,主要是为了SEO推广,搜索引擎对动态的文件获取难度大,不利于网站的推广。实习原理是基于Apache或Nginx的rewrite机制。...主要有两种方式: 一种是直接在配置虚拟机的位置配置伪静态,这个每次修改完成后需要重启web服务器。...echo是语言结构(language construct),而并不是真正的函数,因此不能作为表达式的一部分使用。echo是php的内部指令,不是函数,无返回值。...假设这里WEB服务器是Nginx,应用程序是 PHP,而 php-fpm 是管理 FastCGI 的,这也就是 php-fpm,FastCGI,和 Nginx 之间的关系。...tcp的方式快而且消耗资源少,因为socket之间在nginx和php-fpm的进程之间通信,而tcp需要经过本地回环驱动,还要申请临时端口和tcp相关资源,unix socket会显得不是那么稳定,当并发连接数爆发时

    6.9K20

    php面试题目2020_php算法面试题及答案

    Session保存在服务器端的文件或数据库中,默认保存在文件中,文件路径由php配置文件的session.save_path指定。Session文件是公有的。...设置PHP的报错级别并返回当前级别。 9、说说你对缓存技术的了解? 缓存技术是将动态内容缓存到文件中,在一定时间内访问动态页面直接调用缓存文件,而不必重新访问数据库。...CSRF防范: A、合理规范api请求方式,GET,POST B、对POST请求加token令牌验证,生成一个随机码并存入session,表单中带上这个随机码,提交的时候服务端进行验证随机码是否相同...调用类常量 调用静态方法 36、__autoload()方法的工作原理是什么? 答:使用这个魔术函数的基本条件是类文件的文件名要和类的名字保持一致。...: 提示:命令行下执行php,是不走Apache/Nginx等这类东西的,没有什么http协议,所以get,post传参数根本不起作用,并且还会报错。

    3.2K20

    没有 NGINX 和 OpenResty 的未来:Cloudflare 工程师正花费大量时间用 Rust 重构现有功能

    为了直接与 NGINX 进行交互,其中某些部分(如 cf-html)是用 C 和 C++ 等低级语言编写的。...过去,Cloudflare 掌握着大量这样的 OpenResty 服务,但现在留下的就只有 FL 等为数不多的几种了,其他组件已经被转移到了 Workers 或者基于 Rust 的代理处。...另外,使用 gdb 获取 coredump 来执行分析也很困难,因为当大家注意到内存占用过量而开始写入硬盘时,进程内存已经增长到了可能令服务器崩溃的程度,这时候做什么都太晚了。...所以必须格外小心,特别是在 NGINX 的这种灵活性“优势”可能导致整台设备停止服务的情况下。 该团队面临的另一个重大挑战,跟传入响应正文块的背压有关。...无论是用类似 Wireshark 的过滤语言来编写防火墙规则、允许数百万用户编写任意 JavaScript 代码并直接在我们平台上运行,还是即时重写 HTML 响应,Rust 都为我们的服务划定了严格的执行边界

    65210

    RPO分析+Share your mind分析

    什么是RPO RPO(Relative Path Overwrite)相对路径覆盖,主要就是利用服务端和客户端对url的处理的一些差异,来让客户端加载我们想让客户端加载的文件。...而不是网站开发者想加载的文件。...Nginx则不同,Nginx会将'%2f'作为'/'去处理,所以执行的结果显示的为正常页面。 客户端对%2f的处理 客户端为什么会有对%2f的处理呢?客户端不是运行在用户的电脑上的吗?...简单复现 实验环境 - 服务端 Nginx - 客户端 谷歌浏览器 - 源码 服务端的源码就是文章前面给出的代码 url为 http://127.0.0.1/rpo/yang/index.php ?...这个js文件难道是用来存放我们写入的文章内容??? 这个js文件难道是为了出题才这样设置的??? 这听起来很作啊,出题师傅不会这样的吧。 这个确实不是这样的,这里使用的是pathinfo模式。

    55430

    Nginx系列教程(四)| 一文带你读懂Nginx的动静分离

    一、Nginx 动静分离 Nginx 动静分离,简单来说,就是把动态和静态请求分开,这里所说的不是将动态页面和静态页面物理分离,可以理解为:Nginx处理静态页面,Tomcat处理动态页面。...比如:html 页面,js/css 样式文件等; 与其匹配的技术架构来加速。比如:Squid、Nginx、CDN,而静态页面最大的优点:速度快、跨平台、跨服务器。...; 网页内容发布到网站服务器上,无论是否有用户访问,每个静态网页的内容都将保存在网站服务器上,也就是说,保存在服务器上的文件,每个网页都是一个独立的文件; 内容相对稳定,容易被搜索引擎所检索; 没数据库的支持...; 不是独立存在于服务器上的网页文件,只有当用户请求时服务器才返回一个完整的网页; 在进行搜索引擎推广时需做一定的技术处理才能够适应搜索引擎的要求; ?...,删除后端tomcat服务器上的某个静态文件,查看是否能访问,如果可以访问说明静态资源Nginx直接返回了,无须在通过后端Tomcat服务器; ?

    90220

    🚀作为前端,怎么让其他同事给你挑大拇哥👍?运维命令简易上手

    服务器命令知识 切换权限 sudo su 权限名称 // 不填时,默认为root // :有的用户名设置了密码,还需要输入密码回车验证 下载第三方包 不同的服务器操作系统,下载包的命令不一样 Debian...zip需要下载第三方包才能用,而unzip一般为系统自带的命令 unzip a.zip // 解压a.zip文件 // 有时解压文件会提示文件已存在,输入y即可覆盖 预览文件 使用cat预览文件内容...如果端口不是默认的22,需要你手动指定 ssh -p 23 work@10.0.0.112.114 有的服务器可能有密钥验证,需要你将本地的git密钥放在服务器指定位置才可以。...local_dir work@10.0.0.112.114:/path/filename(本地目录) :如果是目录,可以加参数 -r nginx命令知识 如果你上手是崭新的服务器,你还需要下载nginx...nginx启动关闭命令 // 重新加载配置文件,一般配置文件修改之后需要运行这个命令 nginx -s reload // 硬关闭nginx服务  nginx -s stop // 优雅的关闭,关闭的时候有请求就等候请求结束在关闭

    19040

    手把手教你,嘴对嘴传达------Nginx实现动静分离的两种方式

    的配置文件中,是通过location配置段配合正则匹配来实现静态与动态页面的不同处理方式 在企业信息化应用环境中,服务器的安全性和响应速度需要根据实际情况进行相应参数配置,以达到最优的用户体验...默认的nginx安装参数只能供最基本的服务,还需要调整如网页缓存时间,连接超时,网页压缩等相应参数,餐能发挥出服务器的最大作用 一、部署Nginx+Apache动静分离 动静分离的概念 nginx...动静分离从目前实现角度来说大致分为两种: 将静态文件放在静态资源服务器上,也是目前主流的方案 将静态资源和动态资源在一起发布,通过nginx来进行区分 1、Nginx动静分离介绍 动静分离的概念...动静分离从目前实现角度来说大致分为两种: 将静态文件放在静态资源服务器上,也是目前主流的方案 将静态资源和动态资源在一起发布,通过nginx来进行区分 Nginx的静态处理能力很强,但是动态处理能力不足...,因此,在企业中常用动静分离技术 针对PHP的动静分离 静态页面交给 Nginx处理 动态页面交给 PHP-FPM模块或 Apache处理 在 Nginx的配置中,是通过 ocation配置段配合正则匹配实现静态与动态页面的不同处理方式

    1.4K10

    Nginx动静分离实现

    Nginx动静分离实现: Nginx是一种轻量级,高性能,多进程的Web服务器,非常适合作为静态资源的服务器使用,而动态的访问操作可以使用稳定的Apache、Tomcat及IIS等来实现,这里就以Nginx...· 原理 · 实现 · 验证 一、原理 原理: 说明: 1、代理服务器和静态服务器即为一台服务器上,这里只是为了明显区分动静分离所处服务器的不同; 2、静态服务器中,存放的资源主要是源代码文件...,我们就认为是动态访问请求,那么就直接访问参与负载均衡的服务器列表中的某一台服务器的动态操作; 最后,Nginx作为Web服务器加载静态资源(html、css、js、image),而静态资源如果需要动态获取数据...三、验证 首先,在静态服务器中的Web根目录下,放置一个static.html文件,内容如下: <!...最后,打开浏览器输入192.168.1.100,结果如下: 从上图,我们知道动静已经分离成功了,因为静态资源页面html加载的是静态服务器的,而动态请求操作则访问的是动态服务器。

    45620

    Apache 与 Nginx:你应该选择哪个 Web 服务器

    Nginx 主要用于提供静态文件,但今天,它已经发展成为一个完整的 Web 服务器,可以处理所有服务器任务。如今,Nginx 也被用作反向代理、负载均衡器和 HTTP 缓存。...此过程消耗更少的内存,从而提高性能。 最重要的是,由于 Nginx 的内存消耗较低,它往往能够同时处理更多的连接而不会使主机服务器过载。...性能:静态/动态内容 Web 服务器的性能主要由两个参数来判断,即处理静态内容和动态内容的能力。 静态文件不需要处理,因此这对于测量服务器的响应时间很有用。...那么,每台服务器能以多快的速度交付小型静态文件呢?当涉及到静态内容时,这里是 Nginx 的亮点,因为文件可以直接、快速地提供给客户端。...区别主要来自服务器架构。 对于显示动态内容,测试结果显示 Apache 与 Nginx 的性能完全相同。 Nginx 没有任何原生处理动态内容的能力。它不是为动态内容的本地处理而设计的。

    2.7K10

    🚀作为前端,怎么让其他同事给你挑大拇哥👍?运维命令简易上手

    今天分享给大家 服务器命令知识 切换权限 sudo su 权限名称 // 不填时,默认为root // :有的用户名设置了密码,还需要输入密码回车验证 下载第三方包 不同的服务器操作系统,下载包的命令不一样...zip需要下载第三方包才能用,而unzip一般为系统自带的命令 unzip a.zip // 解压a.zip文件 // 有时解压文件会提示文件已存在,输入y即可覆盖 预览文件 使用cat预览文件内容...如果端口不是默认的22,需要你手动指定 ssh -p 23 work@10.0.0.112.114 有的服务器可能有密钥验证,需要你将本地的git密钥放在服务器指定位置才可以。...local_dir work@10.0.0.112.114:/path/filename(本地目录) :如果是目录,可以加参数 -r nginx命令知识 如果你上手是崭新的服务器,你还需要下载nginx...nginx服务的相关命令 // 重新加载配置文件,一般配置文件修改之后需要运行这个命令 nginx -s reload // 硬关闭nginx服务 nginx -s stop // 优雅的关闭,关闭的时候有请求就等候请求结束在关闭

    18600

    构建没有 Nginx 的未来?

    出品 | OSC开源社区(ID:oschina2013) 去年曾报道过,Cloudflare 将 Nginx 替换为内部采用 Rust 编写的 Pingora,目标是构建一个更快、更高效、更通用的内部代理...不过 Cloudflare 的基础设施非常庞大,并且包含许多不同的服务。 近日,Cloudflare 工程师介绍了如何使用 Rust 重写基于 C 语言的 Nginx 模块。...这是一个 Nginx 模块,位于 Cloudflare 的核心反向 Web 代理内部,亦称为 FL (Front Line)。...FL 运行着 Cloudflare 应用程序服务的大部分逻辑,因此这次替换无疑更具挑战性。Cloudflare 称,完成这项工作为他们完全摆脱 Nginx 铺平了道路。...如果你看好一个事情,一定是坚持了才能看到希望,而不是看到希望才去坚持。相信我,只要坚持下来,你一定比现在更好!如果你还没什么方向,可以先关注我,这里会经常分享一些前沿资讯,帮你积累弯道超车的资本。

    22810

    我是一个秒杀请求,正在逃离这颗星球...

    商品详情页是一个静态页面,将这些静态页面存储到 Nginx 服务器上,访问静态资源时,请求先到 Nginx,然后 Nginx 服务器通过请求的 URL 链接来匹配是否是访问的静态资源。...大屏的商品详情页并不是通过发送请求从后台服务器拿到的。其实实现了动静分离 。...一张图解释 Nginx 动静分离 静态资源比如 HTML 文件极少变化,就可以专门放到一台服务器上,直接访问,不需要与后台服务器交互(比如 Tomcat)。...CDN 制服 什么是 CDN:CDN 大白话解释就是用户就近获取资源,减少网络传输时间,提高访问速度。 Nginx 上放 HTML文件,而 CDN 上则放 HTML 引入的图片文件、脚本文件。...秒杀成功后,快速告诉用户已经秒杀成功,而不是等待订单完在告诉用户,那用户就要多等一会了,影响体验。 为什么要做队列削峰?

    43731

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    热门标签

    领券