• nginx phase handler的原理和选择

    日期:

    nginx phase handler的原理和选择 PHASE HANDLER的种类 nginx在接收并解析完请求行,请求头之后,就会依次调用各个phase handler。 phase handler是完成nginx主要功能的阶段。 Nginx有如下11种phase,phase会依次执行。同一个phase,可能会挂载多个handler。...

  • nginx lua模块源码简单解析

    日期:

    对nginx lua模块的整个流程,原理简单解析。由于nginx lua模块相关配置,指令,API非常多,所以本文档只以content_by_lua指令举例说明。 读本文档最好配合读源码. 不适合对nginx和lua一点都不了解的人看。 1.相关配置 详细配置见 https://github.com/openres...

  • cloudflare的新waf,用Lua实现的

    日期:

    我们使用nginx贯穿了我们的网络,做前线web服务,代理,流量过滤。在某些情况下,我们已经扩充了nginx上我们自己的模块的核心C代码,但最近我们做了一个重大举措,与nginx结合使用lua 几乎全部用lua写的我们的一个项目是新的cloudflare WAF。这个我们另有博...

  • nginx静态编译lua[jit]

    日期:

    原淘宝工程师清无(王晓哲)和春来(章亦春)开发的lua nginx模块非常强大。现在网上的安装方法主要都是动态编译lua的,但是总有种种原因动态编译有诸多不便,这时候就需要将luajit静态编译进nginx里 第一种方法就是直接使用 openresty,并利用openresty提供的方...

  • nginx内存池实现原理

    日期:

    Nginx以高效,节省内存著称。到底如何高效,如何节省内存,这个得真正了解其设计原理才能知道,分析源码是了解其原理最直接的方法。Nginx对非常多的基础设施(红黑树 内存池 连接池 hash表)都重复造了轮子,我们来看看为什么要这么做。 对于c系统,最难的常...

  • nginx连接池实现

    日期:

    1.配置 worker_connections 模块:EventsModule 语法: worker_connectionsnumber 默认: 位于mainsection的指令worker_connections和worker_processes可以帮助你计算你能处理的最大 并发 数 maxclients=worker_processes*worker_connections 在一个反向代理环...

  • nginx上传文件大小

    日期:

    采用nginx作反向代理,出现了一个诡异的问题,小文件可以提交,大文件会报500内部错误。这个是什么原因导致的呢? 查wiki可知,上传文件大小相关的有三个配置 client_body_buffer_size 配置请求体缓存区大小, 不配的话, client_body_temp_path 设置临时文件...

  • nginx超时设置

    日期:

    nginx常用的超时配置说明 client_header_timeout 语法 client_header_timeout time 默认值 60s 上下文 http server 说明 指定等待client发送一个请求头的超时时间(例如:GET / HTTP/1.1).仅当在一次read中,没有收到请求头,才会算成超时。如果在超时时间...

  • nginx中的超时设置

    日期:

    nginx使用proxy模块时,默认的读取超时时间是60s。 1. send_timeout syntax: send_timeout the time default: send_timeout 60 context: http, server, location Directive assigns response timeout to client. Timeout is established not on entire trans...

  • Nginx添加HttpGzip模块

    日期:

    Nginx启用HttpGzip模块 参考Nginx重新编译添加模块 1.编译模块 cd nginx-1.4.1/ sudo ./configure --with-http_gzip_static_module --with-http_sub_module --prefix=/opt/nginx sudo make #编译 #不要make install,否则就是覆盖安装 #启用HttpGzip模块,在...