一、一处“鸡肋”的反射XSS 上月,遇到一处有趣的XML接口,使用POST方式发送如下请求时: POST /query HTTP/1.1
Host: api.demo.com
Content-Type: application/xml
<xml><vulnerable>2019<ScRiPt>alert(1)</ScRiPt></vuln
转载
2024-02-26 16:48:44
53阅读
最近实际开发过程中,发现部分服务资源访问503 Service Temporarily Unavailable,查找后证实是在对nginx做了限速以后,限速做的太低了超过访问次数直接拒绝访问返回503错误。nginx 可以使用ngx_http_limit_req对服务器资源请求进行限制。该模块使用漏斗算法(Leaky Bucket),该算法有两种处理方式Traffic Shaping和Traffi
转载
2024-02-25 22:58:39
133阅读
nginx服务器给客户端发送响应时,包括http响应头部、http响应包体内容。可以调用http框架提供的两个函数ngx_http_send_header,ngx_http_output_filter,分别用于给客户端发送http响应头部、http响应包体。这两个函数会调用各个过滤器模块,对将要发送给客户端的响应头部、响应包体进行过滤处理。例
转载
2024-02-24 19:09:04
428阅读
关于nginx负载均衡策略配置,可参考nginx 负载均衡策略从nginx 1.9.13开始,默认情况下不重试非幂等请求(PUT、POST等),当在配置中增加失败重试配置时,如果后端服务器响应超时,Get请求会重新选择一台上游服务器进行重试,而POST请求则会返回504 Gateway Time-out,不会进行重试。可使用以下两种方式处理POST请求失败重试问题方式1想在1.9.13或更高版本上
转载
2024-02-24 09:19:39
76阅读
前言前几天正在升级发版项目的时候,发现一个很奇葩的问题,就是用户再浏览器里执行了一次http请求,结果后端服务器执行了两遍,如果这次请求是Insert操作,可想而知,数据库会多出一条一模一样的记录来。场景还原网关用Nginx做了反向代理和负载均衡,Nginx下挂着两台阿里云ECS服务器,每台机器上都装着Tomcat,用户打开浏览器,点击页面,访问后端接口,查看Nginx的access.log,结果
转载
2024-02-23 09:25:54
51阅读
该模块可实现如下的功能,在浏览器输入http://你的IP/lcw.text,能够读出你在根目录下创建的lcw.txt里面的内容,并在前面加上一句字符串where there is a will,there is a way! 代码如下://start from the very beginning,and to create greatness
//@author: Chuangwei Lin
转载
2024-07-01 15:50:07
37阅读
查看安装了哪些模块命令: nginx -V
nginx version: nginx/1.2.3
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC)
TLS SNI support enabled
configure arguments: --prefix=/opt/xcache/nginx --wit
转载
2024-08-27 11:21:47
102阅读
一.日志查看#tail -f access.log
# tail -f logs/www_mrliangqi.log
91.200.12.90 - - [12/May/2016:14:30:44 +0800] "POST /wp-comments-post.php HTTP/1.0" 500 3294 "http://www.mrliangqi.com/516.html" "Mozilla/5.0
转载
2024-05-24 13:23:35
260阅读
上一篇文章我写了 Nginx 的 11 个阶段,很多人都说太长了。这是出于文章完整性的考虑的,11 个阶段嘛,一次性说完就完事了。今天这篇文章比较短,看完没问题。过滤模块的位置之前我们介绍了 Nginx 的 11 个阶段,在 content 阶段时,Nginx 会生成返回给用户的响应内容,对用户的响应内容,实际上还需要做再加工处理,Nginx 的过滤模块就是对响应内容进行再加工处理的。所以实际上过
转载
2024-03-28 12:36:29
203阅读
一、Nginx的HTTP过滤模块特征一个请求可以被任意个HTTP模块处理;HTTP过滤模块仅处理服务器发送到客户端的响应,而不处理客户端发往服务器的HTTP请求。 多个过滤模块的顺序的形成以及Nginx自带的过滤模块请参考原书。 二、编写一个HTTP过滤模块 以向返回给用户的文本格式响应包体前加一段字符串"[my filter prefix]"为例,展示如何编写一个HTT
转载
2024-04-07 12:25:39
86阅读
前言
看了几天Nginx的访问第三方服务,大概的内容知道了,包括使用upstream以及subrequest,实质就是Nginx作为反向代理服务器。按照书中方法把代码实现了一遍,但是不知道根本,不知道怎么运行结果,原因就是对代码不熟,暂时决定放弃这一章的梳理与总结,直接跳到简单过滤模块的开发这一章学习,之后再返回来看。
HTTP过滤模块为什么要使用过滤模块
HTTP过滤模块
转载
2024-03-26 10:42:39
84阅读
目录1.防止DDOS2.处理防盗链 1.防止DDOS限制请求速度设置Nginx、Nginx Plus的连接请求在一个真实用户请求的合理范围内。比如,如果你觉得一个正常用户每两秒可以请求一次登录页面,你就可以设置Nginx每两秒钟接收一个客户端IP的请求(大约等同于每分钟30个请求)。在nginx的nginx.conf文件中去修改说明:区域名称为one(自定义),占用空间大小为
转载
2024-05-08 14:16:03
709阅读
前言前两篇介绍了Gateway的简单用法,今天老顾分享一些Gateway的高阶知识点。注册中心在微服务中,如商品服务,肯定是集群部署的。那Gateway怎么路由到多个商品服务呢?还有服务注册中心里面往往注册了很多服务,如果每个服务都需要单独配置的话,这将是一份很枯燥的工作。Gateway 提供了一种默认转发的能力,只要将Gateway 注册到服务中心,Gateway 默认就会代理服务中心的所有服务
转载
2024-06-17 07:20:36
144阅读
1. HTTP 过滤模块ngx_http_not_modified_module仅对 HTTP 头部做处理。在返回 200 成功时,根据请求中 If-Modified-Since 或者 If-Unmodified-Since 头部取得浏览器缓存文件的时间,再分析返回用户文件的最后修改时间,以此决定是否直接发送 304 Not Modified 响应给用户。ngx_http_range_body_f
转载
2024-03-25 15:22:59
19阅读
上一篇文章我写了 Nginx 的 11 个阶段,很多人都说太长了。这是出于文章完整性的考虑的,11 个阶段嘛,一次性说完就完事了。今天这篇文章比较短,看完没问题。过滤模块的位置之前我们介绍了 Nginx 的 11 个阶段,在 content 阶段时,Nginx 会生成返回给用户的响应内容,对用户的响应内容,实际上还需要做再加工处理,Nginx 的过滤模块就是对响应内容进行再加工处理的。所以实际上过
转载
2024-02-29 11:02:30
137阅读
文章目录1、过滤模块的概念2、过滤模块原理2.1、过滤链表2.2、执行顺序3、过滤模块的实现3.1、编写模块结构3.1.1、模块配置结构3.1.2、模块配置命令3.1.3、模块上下文3.1.4、定义模块3.2、设置响应头3.3、设置响应体3.4、编译测试3.5、完整代码4、参考 nginx 模块的实现流程初始化conf 文件请求处理的流程1、过滤模块的概念过滤模块是一种 http 模块,一个请求
转载
2024-03-25 15:37:21
136阅读
上一篇文章我写了 Nginx 的 11 个阶段,很多人都说太长了。这是出于文章完整性的考虑的,11 个阶段嘛,一次性说完就完事了。今天这篇文章比较短,看完没问题。过滤模块的位置之前我们介绍了 Nginx 的 11 个阶段,在 content 阶段时,Nginx 会生成返回给用户的响应内容,对用户的响应内容,实际上还需要做再加工处理,Nginx 的过滤模块就是对响应内容进行再加工处理的。所以实际上过
转载
2024-03-27 10:58:00
20阅读
文章目录过滤模块简介执行时间和内容执行顺序Nginx是怎么按照次序依次来执行各个过滤模块的呢这些过滤模块的简述(按执行顺序)模块编译过滤模块分析相关结构体响应头过滤函数响应体过滤函数主要功能介绍发出子请求优化措施 过滤模块简介执行时间和内容过滤模块是过滤响应头和内容的模块。它工作在获取回复内容之后,向用户发送响应之前。它的处理过程分为两个阶段,过滤HTTP回复的头部和主体,在这两个阶段可以分别对
转载
2024-02-24 23:39:21
107阅读
auth:农夫-Benemail:szjava#126.com(请把#换成@)blog:
本文介绍nginx的过滤模块,主要为过滤模块的处理流程。
nginx各过滤模块的定义:
ngx_http_not_modified_filter_module
默认打开,如果请求的if-modified-since等于回复的last-modified间值,说明回复没有变化,清空
转载
2024-03-22 21:04:22
150阅读
1.nginx查日志脚本首先查看日志每个值对应的意思,根据这个去查请求的ip地址 log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
转载
2024-04-30 14:52:51
27阅读