赞
踩
在nginx的安装目录下的conf
文件夹中,名为nginx.conf
的文件保存着nginx的相关配置,其中包含了一些基础配置和配置示例(使用#
号做了注释),我们可以根据需求进行配置。
nginx配置文件的内容分为三大部分:全局块、events块、http块。进入到usr/local/nginx/conf
目录,使用vi编辑器打开nginx.conf
文件可以查看其中的内容。
全局块的内容如下:
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
全局块的配置影响nginx服务器的整体运行状态,主要包括:
1.运行nginx服务器的用户(组)
2.允许的最大并发量
3.进程PID存放的路径
4.日志存放路径和类型
5.配置文件的引入,等等。
例如:worker_processes
是设置nginx当前支持的最大并发量。
events块的配置主要影响nginx服务器与用户的网络连接,常用的配置包括:是否对多worker_processes下的网络连接进行序列化
、是否允许同时接收多个网络连接
、选择哪种事件驱动模型来处理连接请求
、支持的最大并发量
等。
events {
worker_connections 1024;
}
例如:默认的配置只有一项,它设置了当前支持的最大连接数,默认是1024个。
events块的配置对nginx的性能影响较大,在实际中应该灵活配置。
http块是在使用nginx服务器时配置最频繁的部分。代理、缓存和日志定义等绝大多数功能和第三方模块的配置都在这里。其中,http块包含http全局块和server块。
http全局块的配置项主要包括:文件引入、MIME-TYPE定义、日志自定义、连接超时时间、单链接请求数上限等。
http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; ...... }
每个http块中可以包含多个server块,它的配置包括:监听配置
、主机名称或IP
、日志
、字符编码
、错误页
和路由配置
等。
其中,除了路由配置
,其他配置信息都位于server块的全局区,如下:
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
#error_page 404 /404.html;
......
}
每个server块可以包含多个location块,路由配置
位于location块中,例如:
location = / {
root html;
index index.html index.htm;
}
其中包含了路径映射
、资源名称
等信息,当nginx接收到请求时,就会根据这些信息来匹配相应的资源。
总结: nginx的配置文件是conf
目录下的nginx.conf
,其中的内容分为全局块、events块和http块;全局块包含nginx的整体状态配置,events块包含网络连接的相关配置,http块包含请求处理的相关配置;http块可包含多个server块,server块可包含多个location块。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。