nginx相关面试题(实时更新)

Nginx命令

nginx -s stop and -s quit 有什么区别?

什么是负载均衡

什么是正向代理

什么是反向代理

负载均衡策略

Nginx配置文件nginx.conf有哪些属性模块?

nginx的 location块匹配规则

Nginx命令

cd/usr/local/nginx进入到Nginx的安装目录进入到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 有什么区别?

Stop 是快速关闭,不管有没有正在处理的请求。Quit 是一个优雅的关闭方式,Nginx在退出前完成已经接受的连接请求。

什么是负载均衡

将请求分发到不同的服务器,减少服务器的压力

什么是正向代理

代理客户端

什么是反向代理

代理服务器

负载均衡策略

1 轮询(默认)

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端某个服务器宕机,能自动剔除故障系统。

upstream backserver { server 192.168.0.12; server 192.168.0.13; }

2 权重 weight

weight的值越大分配

到的访问概率越高,主要用于后端每台服务器性能不均衡的情况下。其次是为在主从的情况下设置不同的权值,达到合理有效的地利用主机资源。

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有哪些属性模块?

worker_processes1;# worker进程的数量events {# 事件区块开始worker_connections1024;# 每个worker进程支持的最大连接数}# 事件区块结束http { # HTTP区块开始include mime.types;# Nginx支持的媒体类型库文件default_typeapplication/octet-stream;# 默认的媒体类型sendfileon;# 开启高效传输模式keepalive_timeout65;# 连接超时server {# 第一个Server区块开始,表示一个独立的虚拟主机站点listen 80;# 提供服务的端口,默认80server_namelocalhost;# 提供服务的域名主机名location / {# 第一个location区块开始root html;# 站点的根目录,相当于Nginx的安装目录indexindex.html index.htm;# 默认的首页文件,多个用空格分开}# 第一个location区块结果error_page 4/50x.html;# 出现对应的http状态码时,使用50x.html回应客户location = /50x.html {# location区块开始,访问50x.htmlroot html;# 指定对应的站点目录为html}}......

nginx的 location块匹配规则

location语法规则:

location [=|~|~*|^~] /uri/ { … }= 开头表示精确匹配^~ 开头表示uri以某个常规字符串开头,理解为匹配 url路径即可。~ 开头表示区分大小写的正则匹配~* 开头表示不区分大小写的正则匹配 !~和!~*分别为区分大小写不匹配及不区分大小写不匹配的正则/ 通用匹配,任何请求都会匹配到。

location模块支持正则表达式匹配,不支持条件判断匹配