文章目录

  • nginx配置(一)
  • nginx配置文件
  • nginx 全局配置


nginx配置(一)

  1. 配置文件的组成部分:
    主配置文件 : nginx.conf
    子配置文件 include conf.d/*.conf
    fastcgi,uwsgi,scgi 等协议相关的配置文件
  2. 主配置文件的配置指令:
    directive value [value2 …];
  3. 注意:
    (1) 指令必须以分号结尾
    (2) 支持使用配置变量
    内建变量:由Nginx模块引入,可直接引用
    自定义变量:由用户使用set命令定义
    set variable_name value;
    引用变量:$variable_name
  4. 指令帮助指南

http://nginx.org/en/docs/dirindex.html --> ctrl + F 如:“load_module”

nginx配置文件

主配置文件结构:四部

main block:主配置段,即全局配置段,对http,mail都有效
event {
...
} 事件驱动相关的配置
 http {
...
} http/https 协议相关配置段
 mail {
...
} mail 协议相关配置段
stream {
...
} stream 服务器相关配置段

http协议相关的配置结构

http {
		...
		... 各server的公共配置
		server { 每个server用于定义一个虚拟主机
						...
			    }
		server {
								...
								server_name 虚拟主机名
								root 主目录
								alias 路径别名
								location [OPERATOR] URL { 指定URL的特性
								...
								if CONDITION {
								...
								}
				}
		}

nginx 全局配置

正常运行必备的配置

user nginx;
pid /run/nginx.pid;
include /usr/share/nginx/modules/*.conf;
load_module modules/ngx_mail_module.so;

性能优化相关的配置:

worker_processes number | auto; //worker进程的数量;通常应该为当前主机的cpu的物理核心数
 worker_cpu_affinity cpumask ...;  //提高缓存命中率
 worker_priority number; //指定worker进程的nice值,设定worker进程优先级:[-20,20]
 worker_rlimit_nofile number; //所有worker进程能打开的文件数量上限,最好与ulimit -n 的值保持一致,如65535

事件驱动相关的配置:

events {
    use epoll; //指明并发连接请求的处理方法,默认自动选择最优方法
    accept_mutex on;  // 处理新的连接请求的方法;on指由各个worker轮流处理新请求,Off指每个新请求的到达都会通知(唤醒)所有的worker进程,但只有一个进程可获得连接,造成“惊群”,影响性能,默认值为off,可优化为on
    worker_connections 10240; //每个worker进程所能够打开的最大并发连接数
    multi_accept on|off; //此指令默认为off,即默认为一个worker进程只能一次接受一个新的网络连 接, on表示每个woker进程可以同时接受所有新的网络连接
}

调试和定位问题:

daemon on|off;  // 是否以守护进程方式运行,默认是on,即守护进程方式,off 用于调试或docker环境
master_process on|off; //是否以master/worker模型运行nginx,默认为on,当指定off 将不启动worker
error_log file [level] ; //错误日志文件及其级别;出于调试需要,可设定为debug;但debug仅在编译时使用了“--with-debug”选项时才有效
	/path/logfile: 记录到文件中
	stderr:  发送到标准错误
	syslog:server-address[,parameter=values]  发送到syslog
	memory:size 内存
	level:debug|info|notice|warn|error|crit|alter|emerg 日志级别