Nginx主配置文件参数详解

Nginx安装完毕后,会有响应的安装目录,安装目录里nginx.conf为nginx的主配置文件,ginx主配置文件分为4部分,main(全局配置)、server(主机设置)、upstream(负载均衡服务器设)和location(URL匹配特定位置的设置),这四者关系为:server继承main,location继承server,upstream既不会继承其他设置也不会被继承。

一、Nginx的main(全局配置)文件

双击代码全选
1
2
3
4
5
6
7
8
9
10
11
[root @rhel6u3 - 7 server]# vim /usr/local/nginx/conf/nginx.conf   
user  nginx nginx; //指定nginx运行的用户及用户组为nginx,默认为nobody   
worker_processes  2 //开启的进程数,一般跟逻辑cpu核数一致   
error_log  logs/error.log  notice;  //定于全局错误日志文件,级别以notice显示。还有debug、info、warn、error、crit模式,debug输出最多,crit输出最少,更加实际环境而定。   
pid        logs/nginx.pid; //指定进程id的存储文件位置   
worker_rlimit_nofile 65535 ; //指定一个nginx进程打开的最多文件描述符数目,受系统进程的最大打开文件数量限制   
events {   
     use epoll; 设置工作模式为epoll,除此之外还有select、poll、kqueue、rtsig和/dev/poll模式   
     worker_connections  65535 ; //定义每个进程的最大连接数 受系统进程的最大打开文件数量限制   
}   
…….
双击代码全选
1
2
[root @rhel6u3 - 7 server]# cat /proc/cpuinfo | grep "processor" | wc –l  //查看逻辑CPU核数   
[root @rhel6u3 - 7 server]# ulimit -n 65535  //设置系统进程的最大打开文件数量

二、Nginx的HTTP服务器配置,Gzip配置。

双击代码全选
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
http {   
*****************************以下是http服务器全局配置*********************************   
     include       mime.types;  //主模块指令,实现对配置文件所包含的文件的设定,可以减少主配置文件的复杂度,DNS主配置文件中的zonerfc1912,acl基本上都是用的include语句   
default_type  application/octet-stream; //核心模块指令,这里默认设置为二进制流,也就是当文件类型未定义时使用这种方式   
//下面代码为日志格式的设定,main为日志格式的名称,可自行设置,后面引用。   
     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;  //引用日志main   
     client_max_body_size 20m; //设置允许客户端请求的最大的单个文件字节数   
client_header_buffer_size 32k; //指定来自客户端请求头的headebuffer大小   
client_body_temp_path /dev/shm/client_body_temp; //指定连接请求试图写入缓存文件的目录路径   
     large_client_header_buffers 4 32k; //指定客户端请求中较大的消息头的缓存最大数量和大小,目前设置为4个32KB   
     sendfile        on; //开启高效文件传输模式   
     tcp_nopush     on; //开启防止网络阻塞   
     tcp_nodelay    on; //开启防止网络阻塞   
     keepalive_timeout  65 ; //设置客户端连接保存活动的超时时间   
     client_header_timeout 10 ; //用于设置客户端请求读取超时时间   
     client_body_timeout 10 ; //用于设置客户端请求主体读取超时时间   
send_timeout 10 ; //用于设置相应客户端的超时时间   
//以下是httpGzip模块配置   
#httpGzip modules   
     gzip  on;  //开启gzip压缩   
     gzip_min_length 1k;  //设置允许压缩的页面最小字节数   
     gzip_buffers 4 16k; //申请4个单位为16K的内存作为压缩结果流缓存   
     gzip_http_version 1.1 ; //设置识别http协议的版本,默认是1.1   
     gzip_comp_level 2 ; //指定gzip压缩比,1-9 数字越小,压缩比越小,速度越快.   
     gzip_types text/plain  application/x-javascript text/css application/xml; //指定压缩的类型   
     gzip_vary on; //让前端的缓存服务器存经过gzip压缩的页面

三、nginx的server虚拟主机配置

两种方式一种是直接在主配置文件中设置server字段配置虚拟主机,另外一种是使用include字段设置虚拟主机,这样可以减少主配置文件的复杂性。

双击代码全选
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
*****************************以下是server主机设置*********************************   
   server {   
         listen       80 //监听端口为80   
         server_name  www.rsyslog.org;  //设置主机域名   
         charset gb2312;  //设置访问的语言编码   
         access_log  logs/www.rsyslog.org.access.log  main; //设置虚拟主机访问日志的存放路径及日志的格式为main   
         location / {      //设置虚拟主机的基本信息   
             root   sites/www;  //设置虚拟主机的网站根目录   
             index  index.html index.htm; //设置虚拟主机默认访问的网页   
         }   
         location /status {  // 查看nginx当前的状态情况,需要模块 “--with-http_stub_status_module”支持   
                 stub_status on;   
                 access_log /usr/local/nginx/logs/status.log;   
                 auth_basic "NginxStatus" ; }   
}   
include /usr/local/nginx/server/www1.rsyslog.org; //使用include字段设置server,内容如下   
[root @rhel6u3 - 7 ~]# cat /usr/local/nginx/server/www1.rsyslog.org    
server {   
      listen       80 ;   
      server_name  www1.rsyslog.org;   
       location / {   
             root   sites/www1;   
             index  index.html index.htm;   
         }   
     }

本文出自 “小诺的Linux开源技术博客” 博客,请务必保留此出处http://dreamfire.blog.51cto.com/418026/1140995

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值