在nginx的安装目录下的conf文件夹中,名为nginx.conf的文件保存着nginx的相关配置,其中包含了一些基础配置和配置示例(使用#号做了注释),我们可以根据需求进行配置。
二、配置文件组成nginx配置文件的内容分为三大部分:全局块、events块、http块。进入到usr/local/nginx/conf目录,使用vi编辑器打开nginx.conf文件可以查看其中的内容。
1.全局块全局块的内容如下:
#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当前支持的最大并发量。
2.events块events块的配置主要影响nginx服务器与用户的网络连接,常用的配置包括:是否对多worker_processes下的网络连接进行序列化、是否允许同时接收多个网络连接、选择哪种事件驱动模型来处理连接请求、支持的最大并发量等。
events { worker_connections 1024; }
例如:默认的配置只有一项,它设置了当前支持的最大连接数,默认是1024个。
events块的配置对nginx的性能影响较大,在实际中应该灵活配置。
http块是在使用nginx服务器时配置最频繁的部分。代理、缓存和日志定义等绝大多数功能和第三方模块的配置都在这里。其中,http块包含http全局块和server块。
3.1 http全局块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; ...... }3.2 server块
每个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块。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)