Nginx 主配置文件参数详解

	Nginx 安装完毕后,会有响应的安装目录,安装目录里 nginx.conf 为 nginx 的主配置文件, ginx 主配置文件分为 4 部分,main(全局配置)、server(主机设置)、upstream(负载均衡

	服务器设)和 location(URL 匹配特定位置的设置),这四者关系为:server 继承 main,

	location 继承 server,upstream 既不会继承其他设置也不会被继承。

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

	[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; //定义每个进程的最大连接数 受系统进程的最大打开文件数量限制

	}

	[root@rhel6u3-7 server]# cat /proc/cpuinfo | grep "processor" | wc –l	//查看逻辑 CPU 核数

	[root@rhel6u3-7 server]# ulimit -n 65535	//设置系统进程的最大打开文件数量

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

	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 字段设置虚拟主机,这样可以减少主配置文件的复杂性。 *****************************以下是 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; } } upstream 模块后面负载均衡再做介绍!

  

更多内容请访问 李兴利博客

Nginx 主配置文件参数详解的更多相关文章

  1. Nginx主配置参数详解,Nginx配置网站

    1.Niginx主配置文件参数详解 a.上面博客说了在Linux中安装nginx.博文地址为:http://www.cnblogs.com/hanyinglong/p/5102141.html b.当 ...

  2. nginx主配置参数详解

    ########Nginx的main(全局配置)文件 #指定nginx运行的用户及用户组,默认为nobody #user nobody; #开启的线程数,一般跟逻辑CPU核数一致 worker_pro ...

  3. Nginx 配置及参数详解

    Nginx 配置及参数详解 Nginx Location 指令语法 如下就是常用的 location 配置的语法格式,其中modifier是可选的,location_match就是制定 URI 应该去 ...

  4. compose配置文件参数详解

    转自:https://www.cnblogs.com/jsonhc/p/7814138.html 本文介绍compose配置文件参数的使用,熟练编写compose文件 [root@docker lnm ...

  5. sshd_config 配置文件参数详解

    sshd_config配置详解 名称sshd_config - OpenSSH SSH 服务器守护进程配置文件 大纲/etc/ssh/sshd_config 描述sshd(8) 默认从 /etc/ss ...

  6. nginx 主运行配置详解(nginx.conf)

    #==基础配置==# user nginx; #设置运行用户,当运行NGINX时,进程所使用的用户,则进程拥有该用户对文件或目录的操作权限. worker_processes 4; #设置工作进程数量 ...

  7. nginx配置文件参数详解

    nginx配置文件主要分为4部分:main(全局设置)    main部分设置的指令将影响其他所有设置server(主机设置)server部分的指令主要用于指定主机和端口upstream(负载均衡服务 ...

  8. Nginx log日志参数详解

    $args #请求中的参数值$query_string #同 $args$arg_NAME #GET请求中NAME的值$is_args #如果请求中有参数,值为"?",否则为空字符 ...

  9. nginx的变量参数 详解

    $args #请求中的参数值 $query_string #同 $args $arg_NAME #GET请求中NAME的值 $is_args #如果请求中有参数,值为"?",否则为 ...

随机推荐

  1. linux 第三天11讲

    1.linux下的shell 查看目前使用的是哪种shell env [该命令可以显示当前操作系统的环境变量] env | more chsh -s 输入新的shell 如:/bin/csh shel ...

  2. Android Fragment用法之给Activity创建事件回调

    在某些案例中,可能需要Fragment与Activity共享事件.在Fragment内部定义一个回调接口是一个好方法,并且规定由持有它的Activity实现这个回调方法.当Activity通过接口接受 ...

  3. MySQL单列索引和组合索引的区别介绍

    MySQL单列索引和组合索引的区别介绍 作者:佚名出处:IT专家网2010-11-22 13:05 MySQL单列索引是我们使用MySQL数据库中经常会见到的,MySQL单列索引和组合索引的区别可能有 ...

  4. golang 阻塞的坑

    1.写go程序的时候一定要牢记主线程不能阻塞,一旦阻塞就崩溃,就怕那种某种情况下偶尔会出现几下阻塞的,一定要杜绝.2.select case的执行顺序是乱的,不确定的3.写入管道的时候,一定要保证管道 ...

  5. ecos之widget

    weekbuy:widget.php<?php $setting['author']='zhang'; $setting['name']='周末购'; $setting['version']=' ...

  6. (function(){})(jQuery)的功能和用途?

    1.为什么开发插件都这么写? 2.为什么要穿jQuery进去?在方法中直接用jquery的方法什么的不行吗? 1 首先(function(){})()这种写法 是创建了一个匿名的方法并立即执行(fun ...

  7. UVA 1600 Patrol Robot

    带状态的bfs 用一个数(ks)来表示状态-当前连续穿越的障碍数: step表示当前走过的步数: visit数组也加一个状态: #include <iostream> #include & ...

  8. Microsoft OLE DB Provider for SQL Server 错误 '80040e21'

    我的是因为数据库满了,正在向服务商申请增加数据库容量 原文地址:Microsoft OLE DB Provider for SQL Server 错误 '800作者:欧阳IT记事本 昨天打开网站还正常 ...

  9. GUI编程(一)-----概述

    软件的交互方式 1.命令交互方式. 2.图像交互方式.Java提供了专业的API用于开发图形用户界面(GUI--> Graphic  User   Interface). GUI的分类 1.AW ...

  10. CentOS 6.5 + Nginx 1.8.0 + PHP 5.6(with PHP-FPM) 负载均衡源码安装 之 (三)Nginx负载均衡配置

    Nginx反向代理到单个PHP-FPM(PHP-FPM可位于不同机器) 0.首先,创建我们的网站根目录[注:须在PHP-FPM所在的那台机器创建](以后网站的代码放到此目录下): mkdir /opt ...