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

18 个运维必知 Nginx 代理缓存配置技巧,你都掌握了哪些呢?

我们都知道应用程序和网站性能他们成功关键因素。但是,使您应用程序或网站表现更好过程并不总是很清楚。...如果客户端请求缓存但是由缓存控制定义过期内容,则 Nginx将 If-Modified-Since 字段包含在 GET 请求头中将它发送到源服务器。...HIT - 响应直接来自有效缓存 Nginx 如何确定是否要缓存响应 默认情况下,Nginx 尊重 Cache-Control 源服务器。...Nginx 如何处理 Pragma 在 Pragma:no-cache 报头由客户加入到绕过所有中间缓存,直接进入到源服务器请求内容。...这些具有比较低优先级, proxy_cache_use_stale 指令如上所述。 Nginx 是否支持 Vary Nginx 1.7.7 以及更高版本中支持 Vary

2.3K20

在 REST 服务中支持 CORS

概述本节提供 CORS 概述以及如何在 IRIS REST 服务中启用 CORS 概述。CORS 简介跨域资源共享 (CORS) 允许在另一个域中运行脚本访问服务。...恶意脚本可能允许用户使用授予用户权限访问另一个域中信息,但随后在用户不知道情况下,将机密信息用于其他用途。为了避免这种安全问题,浏览器一般不允许这种跨域调用。...要定义此方法,必须熟悉 CORS 协议细节(此处不讨论)。还需要知道如何检查请求并设置响应。...为此,检查默认使用方法有用,即 %CSP.REST HandleDefaultCorsRequest() 方法。本节说明此方法如何处理源、凭据、和请求方法并提出变体建议。...以下代码获取源并使用它来设置响应。一种可能变体根据允许列表测试来源。然后域被允许,设置响应。如果不是,请将响应设置为空字符串。

2.6K30
您找到你想要的搜索结果了吗?
是的
没有找到

重学计算机网络-OSI 模型

物理拓扑 :物理层指定如何在网络中布置不同设备/节点,即总线、星形或网状拓扑。 传输方式 :物理层还定义了数据如何在两个连接设备之间流动。各种可能传输模式单工、半双工和全双工。 1....注意 :发送方需要知道与接收方应用程序关联端口号。 通常,此目标端口号默认配置或手动配置。...在接收方一侧 :传输层从其读取端口号,并将收到数据转发到相应应用程序。它还执行分段数据排序和重组。 传输层功能 分段和重组 :此层接受来自(会话)层消息,并将消息分解为更小单元。...生成每个段都有一个与之关联。目标站传输层重新组合消息。 服务点寻址 :为了将消息传递到正确进程,传输层包括一种称为服务点地址或端口地址地址类型。...应用层功能 网络虚拟终端 FTAM - 文件传输访问和管理 邮件服务 目录服务 OSI模型充当参考模型,由于其发明较晚,因此未在Internet上实现。当前使用模型 TCP/IP 模型。

25040

【Nginx20】Nginx学习:FastCGI模块(二)缓存配置

FastCGI缓存配置 是的,你没看错,FastCGI 也有缓存系统,但它走文件缓存。通过之前学习,我们知道 Nginx 对静态文件优化还是相当强悍,因此,文件缓存效率并不低。...,现在你只要知道第一个参数指定缓存文件存放路径就好了。...“Cache-Control”字段“stale-if-error”扩展允许在发生错误时使用过时缓存响应。...如果头部不包含“X-Accel-Expires”字段,可以在头部字段“Expires”或“Cache-Control”中设置缓存参数。 如果包含“Set-Cookie”字段,则不会缓存此类响应。...如果包含具有特殊值“*”“Vary”字段,则不会缓存此类响应(1.7.7)。如果包含具有另一个“Vary”字段,则将考虑相应请求字段(1.7.7)缓存此类响应。

34120

〔连载〕VFP9增强报表-多细节带区

一个常用变通办法建立一个合并了订单表和信用证表游标,添加一个字段“Record type”来指示某条记录来自哪个数据。...报表细节带区中同时包含来自两种记录类型中全部字段,在那些字段上还要做一个 Print When 表达式以使得为每种类型记录仅打印属于它字段。做出来一个非常不便于维护报表!...幸运,VFP 9 通过一个新功能很好解决了这个问题:多细节带区。 记录处理 在探讨多细节带区之前,让我们先讨论一下在一个报表中,VFP 如何在记录们中间移动。...示例1:多个子表 第一个示例 EmployeesMD.FRX 使用来自 VFP 自带 Northwind 示例数据库(在 VFP 主目录 Samples\Northwind 子目录中)中 Employees...和 Orders 定义为 Employees 子表 这个报表有一个定义为 Employees.EmployeeID 组表达式 ,这个来自 Employees 表字段将出现在组带区中。

1.5K10

*当你在浏览器地址栏输入一个URL后回车,将会发生什么事情?*

和Accept-Encoding); (3)Connection要求服务器保持此TCP连接开放以便接下来请求; (4)请求中还包括针对该域Cookie,Cookie键值对,在不同页面请求之间跟踪网站状态...五、浏览器遵循重定向 现在,浏览器知道“ http://www.facebook.com/”正确URL,因此它发出另一个GET请求: 含义同第一次请求!...七、服务器发回HTML响应 这是服务器生成并发回响应: image.png 该响应内容告诉浏览器: (1)响应体用gzip算法压缩,解压缩后即可看到所需HTML; (2)Cache-Control指定是否以及如何缓存页面...(浏览器通过各个来决定如何解释响应,但也会考虑其他因素,例如URL扩展); (4)Expires指定到期时间。...浏览器知道将特定文件缓存多长时间,因为返回该文件响应包含Expires,此外每个响应还可能包含ETag,其作用类似于版本号,如果浏览器看到已具有该文件版本ETag,它可以立即停止传输。

2.2K30

通过 HTTP XSS

但不,一旦攻击者无法让受害者在实际 XSS 攻击中编辑他/她自己 HTTP ,那么只有在攻击者有效负载以某种方式存储时才能利用这些场景。...我们可能想到第一种情况典型情况:我们可以控制 HTTP 头中一些信息存储在数据库中,稍后在同一页面、应用程序其他任何地方甚至另一个不可访问系统中检索攻击者(盲 XSS)。...\n”; 正如我们在下面看到,在带有 -i 标志命令行中使用 curl,它会向我们显示响应 HTTP 以及包含我们请求 JSON。...由于我们在这篇博客中使用 WAF 提供最后一个“x-sucuri-cache”,我们需要在 URL 中添加一些内容以避免缓存,因为该“HIT”,这意味着它即将到来来自 WAF 缓存。...但仅对我们而言,因为我们通过终端发送该。它不会出现在浏览器、其他人甚至我们自己请求中。 发出了另一个请求(在“日期”检查时间),但似乎没有什么区别。

2K20

详解共享库动态加载

写这篇文章是为了消除我在该主题上知识欠缺,以便成为一名更好程序员。我希望它也能帮助您变得更好。 什么共享库 库一个包含编译后代码和数据文件。...一般来说,库非常有用,因为它们可以缩短编译时间(在编译应用程序时不必编译依赖关系所有源代码)和模块化开发过程。 静态库链接到已编译可执行文件(或另一个库)中。编译后,新组件将包含静态库内容。...总之,ELF文件包含: ELF Header 文件数据,可能包含: 程序header表(段列表) 段表(列表章节标题) 以上两个标题指向数据 ELF指定程序表中段大小和数量,以及节表中段大小和数量...它有9个程序(意味着有9个segment)和30个节(即section)。.../main 它可以工作,但不是很轻便。我们不想每次运行程序时都指定lib目录。更好方法将依赖项放入文件中, 这就需要设置rpath和runpath。

3K20

对不起,看完这篇HTTP,真的可以吊打面试官

Content-Encoding Content-Encoding 实体用于压缩媒体类型,它让客户端知道如何进行解码操作,从而使客户端获得 Content-Type 引用 MIME 类型。...staging site(访问登陆站点) 或者类似的,这样用户就可以知道他们要访问哪个区域。...如果缓存响应包含 Cache-control:must-revalidate,则在正常浏览下也会触发该事件。另一个因素 高级 -> 缓存首选项 面板中缓存验证首选项。...同源策略一种很重要安全策略,它限制了从一个来源加载文档或脚本如何另一个来源资源进行交互。它有助于隔离潜在恶意文档,减少可能攻击媒介。...现在我带你认识了两遍不同源,现在你应该知道如何区分两个 URL 是否属于同一来源了吧! 好,你现在知道了什么跨域问题,现在我要问你,哪些请求会产生跨域请求呢?

6.3K21

掌握并理解 CORS (跨域资源共享)

咱们缺少Access-Control-Allow-Origin。 但是,为什么我们需要它,它有什么用呢? 同源策略 我们在 JS 中得不到响应结果原因同源策略。...该策略目的确保一个网站不能读取对另一个网站请求结果,并由浏览器强制执行。...只有得到肯定答复,浏览器才会发出正式XMLHttpRequest请求,否则就报错。 前面的例子一个简单请求。简单请求是带有一些允许和标志GET或POST请求。...OPTIONS,表示这个请求是用来询问信息里面,关键字段Origin,表示请求来自哪个源。...原因当请求来自另一个来源时,来自good.comcookie将不会被发送,在本例中为evil.com。

2.1K10

【Nginx32】Nginx学习:随机索引、真实IP处理与来源处理模块

而今天,我们要学习则是另一个类似的指令,只不过它是随机在目录中拿出一个文件来当做默认页索引。...proxy_protocol 参数 (1.5.12) 将客户端地址更改为来自 PROXY 协议标地址。...就是根据哪个请求参数来获取,在 Nginx 中通过指定获取到了之后,会直接修改 REMOTE_ADDR 信息。 real_ip_recursive 递归搜索真实 IP 。...如果启用递归搜索,则与其中一个受信任地址匹配原始客户端地址将替换为请求字段中发送最后一个非受信任地址。 变量 这个模块中包含两个变量。...或者此类值不以“http://”或“https://”开头字符串 server_names “Referer”请求字段包含服务器名称之一,就是按照当前 Server 模块中 server_name

58920

http请求什么时候会带上cookie信息

header)服务器发送到浏览器或者其他客户端一些信息,一般用于登陆成功情况下返回给客户端凭证信息,然后下次请求时会带上这个cookie,这样服务器端就能知道来自哪个用户请求了。...Cookie请求字段客户端发送请求到服务器端时发送信息(满足一定条件下浏览器自动完成,无需前端代码辅助)。...path=PATH 将服务器上文件目录作为Cookie适用对象(若不指定则默 认为文档所在文件目录) domain=域名 作为 Cookie 适用对象域名 (若不指定则默认为创建 Cookie...服务器域名) Secure 仅在 HTTPS 安全通信时才会发送 Cookie HttpOnly 加以限制, 使 Cookie 不能被 JavaScript 脚本访问 请看上面三个属性,拿一个...目录,比如浏览器端Cookiepath为/test,那么xxxxxxx必须为/test或者/test/xxxx等子目录才可以 注: 上面3个条件必须同时满足,否则该Post请求就不能自动带上浏览器端已存在

1.9K40

HTTPS安全最佳实践

检查HTTPS配置 HTTPS没有二进制状态,因此仅将其激活还是不够,有许多配置选项会影响加密本身各个方面。 幸运,有些网站会测试你配置并提供如何解决某些问题建议。...其中之一来自QualysSSL服务器测试(https://www.ssllabs.com/ssltest/),它运行一组强大检查。...例如,http://sub.example.com可能适用于某些用户但不适用于其他用户,具体取决于他们之前是否访问过example.com,获得HSTS用户将仅请求HTTPS站点,而其他用户会一直访问...现在浏览器可以不先访问它们情况下知道HSTS域名列表,Google维护了这样预加载列表,该列表包含在Chrome和其他浏览器中。 这个内置预加载列表解决了第一个请求问题。...,你仍然需要等待过期日期1年。

1.7K30

跨域资源共享(CORS)

跨域资源共享(CORS) 一种机制,它使用额外 HTTP 来告诉浏览器 让运行在一个 origin (domain) 上Web应用被准许访问来自不同源服务器上指定资源。...OPTIONS一种HTTP / 1.1方法,用于确定来自服务器更多信息,并且一种安全方法,这意味着它不能用于更改资源。...因为上面示例中请求包含Cookie,所以如果Access-Control-Allow-Origin值为“ *” ,则请求将失败。...*通配符,则服务器也应Origin在Vary响应头中包含信息-指示客户端服务器响应将基于Origin请求值而有所不同。...访问控制请求头部分 该Access-Control-Request-Headers发出预检要求,让服务器知道什么实际请求时HTTP时候会用到头使用。

3.5K50

震惊 | HTTP 在疫情期间把我吓得不敢出门了

Content-Encoding Content-Encoding 实体用于压缩媒体类型,它让客户端知道如何进行解码操作,从而使客户端获得 Content-Type 引用 MIME 类型。...他们需要指定使用哪种身份验证方案,以便希望授权客户端知道如何提供凭据。...staging site(访问登陆站点) 或者类似的,这样用户就可以知道他们要访问哪个区域。...如果缓存响应包含 Cache-control:must-revalidate,则在正常浏览下也会触发该事件。另一个因素 高级 -> 缓存首选项 面板中缓存验证首选项。...同源策略一种很重要安全策略,它限制了从一个来源加载文档或脚本如何另一个来源资源进行交互。它有助于隔离潜在恶意文档,减少可能攻击媒介。

5.3K20

Web Security 之 HTTP request smuggling

HTTP request smuggling 在本节中,我们将解释什么 HTTP 请求走私,并描述常见请求走私漏洞如何产生。...注意:由于最后请求正在重写,你不知道它需要多长时间结束。走私请求中 Content-Length 值将决定后端服务器处理请求时间。...要进行攻击,您需要走私一个将数据提交到存储功能请求,其中包含该数据参数位于请求最后。后端服务器处理下一个请求将追加到走私请求后,结果将存储另一个用户原始请求。...一个示例 Apache 和 IIS Web 服务器默认行为,其中对不带斜杠目录请求将重定向到带斜杠同一个目录: GET /home HTTP/1.1 Host: normal-website.com...然后,攻击者访问静态 URL,并接收从缓存返回敏感内容。 这里一个重要警告,攻击者不知道敏感内容将会缓存到哪个 URL 地址,因为这个 URL 地址受害者用户在走私请求生效时恰巧碰到

1.2K10

深入探索WebSockets

前者更准确,因为虽然它们一种协议,因为必须遵守一套严格规则来建立通信并包含所传输数据,但该标准并没有对如何构建实际数据有效载荷采取任何规定。...,然后一组键值对,为客户端提供来自服务器补充信息,关于服务器请求。...现在服务器知道客户端想要通过活动TCP套接字升级当前正在使用协议,服务器知道要查找相应升级,这将告诉它客户端想要使用哪个传输协议剩余生命周期 连接。...一旦服务器将websocket视为Upgrade值,它就知道WebSocket握手过程已经开始。...位于中间代理服务器。 启动升级到WebSocket连接时,客户端必须包含Sec-WebSocket-Key,该具有该客户端唯一值。

1.3K20

JSON Web 令牌(JWT)如何保护 API

保护HTTP API困难在于请求是 无状态 —— API 无法知道是否有两个请求来自同一用户。 那么,为什么不要求用户在每次调用 API 时提供其 ID 和密码呢?仅因为那将是可怕用户体验。...「Token」塑料酒店安全卡,可用于进入你房间和使用酒店设施,但不能进入任何其他人房间。 当你退房时候,你交回卡片。这类似于注销。...如果你想, Payload 可以包含任何数据,但是如果 Token 目的 API 访问身份验证,则可以仅包含用户 ID 。...其次,我们哈希字符串 base 64 编码报头,加上 base 64 编码有效载荷。 第三, secret 任意一段字符串,只有服务器知道。 问. 为什么在签名散列中包含和有效负载?...但是,由于我们知道签名包括和有效负载,因为它们公共信息,所以如果您知道哈希算法(提示:通常在头中指定),则可以生成相同哈希。 但是只有服务器知道秘密 不是 公共信息。

2K10

Kali Linux Web渗透测试手册(第二版) - 3.5 - 使用ZAP代理查看和修改请求

它不仅可以拦截流量,还有很多其他功能,比如我们在前几章中使用过爬虫、漏洞扫描器、模糊测试和暴力破解等。它还有一个脚本引擎,可以用来自动化执行或者创建新功能。...还显示了SQL语句,语句显示应用程序正在将字段(ua)与浏览器发送用户代理字符串(User-Agent)进行比较。...User-Agent浏览器在每个请求头中发送一条消息,用于向服务器标识自己。这通常包含浏览器名称和版本、基本操作系统和HTML呈现引擎。 2....现在我们再次进入浏览器,看看响应: 原理剖析 在这个小节中,我们使用ZAP代理拦截了一个有效请求并修改了ua,验证了服务器已经接受我们提供值。...ZAP起到一个中间人作用,可以任意修改浏览器提供给服务端请求 另请参阅 另一个改变User-Agent方法使用用户代理切换器(在第一章Firefox扩展安装),设置Up Kali Linux and

87820
领券