2019年1月12日
摘要: 处理HTTP请求的11个阶段如下图:序号阶段指令备注1POST_READrealip获取客户端真实IP2SERVER_REWRITErewrite3FIND_CONFIG4REWRITErewrite5POST_REWRITE6PRE_ACCESSlimit_conn, limit_req7ACCESSauth_basic, access, auth_requestauth_basic可以做访问限... 阅读全文
posted @ 2019-01-12 17:21 永远的麦子 阅读(2030) 评论(0) 推荐(0)
摘要: nginx的进程结构如下图:通过ps –ef | grep nginx可以看到共有三个进程,一个master进程,两个worker进程。nginx是多进程结构,多进程结构设计是为了保证nginx的高可用高可靠,包含:master进程:也是父进程,负责worker进程的管理。worker进程:也是子进程,worker进程一般配置成与服务器的CPU核数相同,worker进程用来处理具体的请求的。cac... 阅读全文
posted @ 2019-01-12 16:39 永远的麦子 阅读(2978) 评论(0) 推荐(1)
摘要: nginx的请求处理流程如下图:nginx可以处理来自web(http),Email,TCP/UDP的三类请求。nginx底层使用非阻塞的事件驱动引擎,结合状态机来完成异步通知,其中处理Http请求的是HTTP状态机。 阅读全文
posted @ 2019-01-12 16:21 永远的麦子 阅读(1786) 评论(0) 推荐(0)
摘要: 搭建静态资源web服务器1,创建静态页面在nginx的安装目录(/usr/local/nginx)下创建文件夹webapplications/helloworld,然后创建一个名为index.html的页面。2,修改配置文件打开nginx的配置文件(默认在/usr/local/nginx/conf/nginx.conf),添加以下配置:保存配置后,运行nginx –s reload重新加载配置。3... 阅读全文
posted @ 2019-01-12 16:01 永远的麦子 阅读(503) 评论(0) 推荐(0)
摘要: 日志切割如果使用默认日志配置,经过一段时间运行后,access.log和error.log文件会变得非常大,使维护和排查问题变得不便,所以非常有必要做日志切割。通常的思路是:使用nginx的-s reopen命令,结合linux系统的crontab定时任务命令,弄一个定时任务按时切割日志文件。每天定时执行脚本切割日志文件。附:bash脚本#!/bin/bash#Rotate the nginx l... 阅读全文
posted @ 2019-01-12 15:06 永远的麦子 阅读(845) 评论(0) 推荐(0)