目录
- Nginx命令
- nginx -s stop and -s quit 有什么区别?
- 什么是负载均衡
- 什么是正向代理
- 什么是反向代理
- 负载均衡策略
- 1 轮询(默认)
- 2 权重 weight
- 3 ip_hash( IP绑定)
- Nginx配置文件nginx.conf有哪些属性模块?
- nginx的 location块匹配规则
Nginx命令
代码语言:javascript复制cd /usr/local/nginx 进入到Nginx的安装目录
代码语言:javascript复制进入到sbin目录
./nginx 启动Nginx
./nginx -s stop ./nginx -s quit 关闭Nginx
./nginx -s reload 重新启动,重新加载配置文件
./nginx -v 查看版本
./nginx -t 检查配置文件是否正确
./nginx -c /usr/local/nginx/conf/nginx.conf 重新加载指定配置文件
nginx -s stop and -s quit 有什么区别?
代码语言:javascript复制Stop 是快速关闭,不管有没有正在处理的请求。
Quit 是一个优雅的关闭方式,Nginx在退出前完成已经接受的连接请求。
什么是负载均衡
将请求分发到不同的服务器,减少服务器的压力
什么是正向代理
代理客户端
什么是反向代理
代理服务器
负载均衡策略
1 轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端某个服务器宕机,能自动剔除故障系统。
代码语言:javascript复制upstream backserver {
server 192.168.0.12;
server 192.168.0.13;
}
2 权重 weight
weight的值越大分配
到的访问概率越高,主要用于后端每台服务器性能不均衡的情况下。其次是为在主从的情况下设置不同的权值,达到合理有效的地利用主机资源。
代码语言:javascript复制upstream backserver {
server 192.168.0.12 weight=2;
server 192.168.0.13 weight=8;
}
3 ip_hash( IP绑定)
每个请求按访问IP的哈希结果分配,使来自同一个IP的访客固定访问一台后端服务器,并且可以有效解决动态网页存在的session共享问题
Nginx配置文件nginx.conf有哪些属性模块?
代码语言:javascript复制worker_processes 1; # worker进程的数量
events { # 事件区块开始
worker_connections 1024; # 每个worker进程支持的最大连接数
} # 事件区块结束
http { # HTTP区块开始
include mime.types; # Nginx支持的媒体类型库文件
default_type application/octet-stream; # 默认的媒体类型
sendfile on; # 开启高效传输模式
keepalive_timeout 65; # 连接超时
server { # 第一个Server区块开始,表示一个独立的虚拟主机站点
listen 80; # 提供服务的端口,默认80
server_name localhost; # 提供服务的域名主机名
location / { # 第一个location区块开始
root html; # 站点的根目录,相当于Nginx的安装目录
index index.html index.htm; # 默认的首页文件,多个用空格分开
} # 第一个location区块结果
error_page 500502503504 /50x.html; # 出现对应的http状态码时,使用50x.html回应客户
location = /50x.html { # location区块开始,访问50x.html
root html; # 指定对应的站点目录为html
}
}
......
nginx的 location块匹配规则
location语法规则:
代码语言:javascript复制location [=|~|~*|^~] /uri/ { … }
代码语言:javascript复制= 开头表示精确匹配
^~ 开头表示uri以某个常规字符串开头,理解为匹配 url路径即可。
~ 开头表示区分大小写的正则匹配
~* 开头表示不区分大小写的正则匹配
!~和!~*分别为区分大小写不匹配及不区分大小写不匹配的正则
/ 通用匹配,任何请求都会匹配到。
location模块支持正则表达式匹配,不支持条件判断匹配