1、nginx的工作模式
(1)master/worker工作模式:
a.一个master进程:负载加载和分析配置文件、管理worker进程、平滑重启升级等。
b.一个或多个worker进程:处理并响应用户请求
c.缓存相关的进程:
cache loader:载入缓存对象
cache manager:管理缓存对象
(2)nginx的特性:异步、非阻塞、事件驱动
a.并发请求处理:通过epoll/select
b.文件IO:高级IO sendfile,异步,mmap
(3)nginx模块:高度模块化,但其模块早期不支持DSO机制。不过近期版本支持动态装载和卸载
2、介绍nginx的组成部分
1)配置文件的组成部分:
主配置文件:
/etc/nginx/nginx.conf
include /etc/nginx/conf.d/*.conf
fastcgi,uwsgi,scgi等协议相关的配置文件
mime.types:支持的mime类型。mime表示多用途互联网邮件扩展
2)主配置文件的配置指令:
directive value [value2.....]; nginx配置文件中每一条指令以分号结尾。
注意:
(1):指令必须以分号结尾
(2):支持使用配置变量
内建变量:由nginx模块自带的变量,可直接引入
自定义变量:由用户使用set命令定义;
set variable_name value;
引用变量:$varable_name
3)查看安装时编译配置参数:
nginx -V
nginx -s stop | reload | stop:传递给nginx信号参数
nginx -c file:指定配置文件。
4)主配置文件结构:
main block:主配置端,也是全局配置段;
event {
.......
} 事件驱动相关的配置。
http {
.....
} http/https协议相关的配置段;
mail {......}
stream {
.....
}
http协议相关的配置结构
http {
...
...:各server的公共配置
server {
....
}:每个server用于定义一个虚拟主机
server {
......
listen
server_name
root
alias
location [OPERATOR] url { location用来定义用户对某个资源的访问控制。
....
if condition {
......
}
}
}
}