nginx块指令:

    全局块:配置nginx全局的指令

    events块:配置nginx与用户连接相关指令

    http块:提供HTTP服务

    server块:配置虚拟主机,一个http可以有多个server

    location块:匹配URL后需要做的相关操作。

nginx.conf配置文件详解:

全局块:	user   指定默认用户	worker_processes  1; 指定工作进程数。和cpu核数相关.cpu核数*2	worker_rlimit_nofile 102400; 进程打开的最大文件数。	worker_cpu_affinity 0001;  绑定CPU。		error_log   错误日志路径.日志等级.	pid    pid文件的路径。	  	events块:    use epoll; 使用epoll的I/O多路复用模型.	worker_connections   每个工作进程所支持的最大连接数。http块:	include       mime.types;   媒体类型。	default_type  application/octet-stream;   默认类型:以二进制文件流的方式传输。	log_format   日志格式。	access_log  main  访问日志文件路径。 main指定名称。	sendfile   加快传输文件的机制。	keepalive_timeout  处理完一个连接后,tcp连接保持的时间。	gzip    对文件进行压缩,传输到客户端。server块:    listen     监听端口	server_name   域名或IP		charset    指定响应内容的编码(utf-8,gbk)	access_log  虚拟主机的访问日志路径。location块:	root  网站默认根目录。	index  默认index或默认index后缀。		error_page  错误页面。		location ~ \.php$ {     #代理php脚本            root           html;            fastcgi_pass   127.0.0.1:9000;  代理到后端的php。            fastcgi_index  index.php;            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;  指定php脚本名。            include        fastcgi_params;        }

二. 配置文件优化:

全局块优化参数:1.优化工作进程个数:设置为CPU的总核数或CPU总颗数*2example:	worker_processes  2;         # 2核CPU的配置	worker_cpu_affinity 01 10;   #工作进程CPU绑定。	worker_processes  4;         # 4核CPU的配置	worker_cpu_affinity 0001 0010 0100 1000;  #工作进程CPU绑定。2.工作进程CPU绑定:充分利用硬件的多 CPU 多核资源。	worker_cpu_affinity 01 10;       #2核CPU配置.	worker_cpu_affinity 0001 0010 0100 1000;  #4核CPU配置。 共4核CPU,设置2个工作进程绑定到2核cpu上:worker_cpu_affinity 0001 0010 0001 0010;3.增大打开最大文件数:worker_rlimit_nofile 102400;events块配置: 事件处理模型:    use epoll; 连接数:    worker_connections  65535;	4. http块配置:   sendfile提升文件传输	sendfile  on;    屏蔽输出版本:	server_tokens off;   keepalive_timeout 保持时间:        keepalive_timeout  30;   #可以设置稍微小点。   #设置30s,可以减小socket连接和释放的资源的花销。      gzip压缩:        gzip  on;        gzip_buffers 4 16k;  以16k为单位,用4倍的内存缓存这个文件。		gzip_comp_level 3;  压缩级别.数字越小,压缩比例越高.占用资源越多。		gzip_disable "MSIE[1-6]";  #禁用客户端IE浏览器访问。		gzip_min_length 1k;     #最小文件为1k以上的文件才进行压缩。	gzip_http_version 1.0;  #压缩所支持的http版本。		gzip_types text/plain application/html application/css application/js;	#压缩文件类型:文本,html,css,js 		gzip_vary on;  #根据http头部去判断是否进行压缩。		client_max_body_size 8m;   #加大客户端上传文件的大小。	5.server块配置:  	charset utf-8;	6. 错误页面优雅显示:   server块配置:	error_page  404              /404.html;        location = /404.html {            root html;        }      在/usr/local/nginx/html/目录下创建404.html. 自定义错误页面的内容。	  	  7. 启用客户端缓存策略:   server块配置:	    location ~ \.(jpg|png|gif) {            expires 30d;        }				  location ~ \.(html|css|js) {            expires 1d;        }