nginx配置文件介绍

  • nginx.conf:  Base configuration of the application
  • mine.types: A list of file extensions(扩展) and their associated(关联) mime type(所支持的mine类型列表)
  • fastcgi_params:Fast CGI-related configuration(fast CGI相关配置)
  • proxy.conf: Proxy-related configuration(代理相关配置)
  • sites.conf: Configuration of the websites served by Nginx, also know  as virtual hosts.It's recommended to create separate files for each domain(定义虚拟主机)

main配置段:
event配置段:
server配置段:

正常运行必备的配置:
nginx.conf: 
main配置段:
  1. user USERNAME[GROUPNAME]    指定用于运行worker进程的用户和组; 如:user nginx nginx
  2. pid /PATH/TO/PID_FILE;   指定nginx进程的pid文件路径; 如:pid /var/run/nginx.pid
  3. worker_rlimit_nofile:   指定一个worker进程所能够打开的最大文件描述符数量(有默认值1024)
  4. worker_rlimit_sigpending: 指定每个用户能够发往worker进程的信号数量


优化性能相关的配置:

nginx.conf:

main配置段:

  1. worker_processes: worker进程的个数,通常应该为物理CPU核心数量减1,可以为auto实现自动设定
  2. worker_cpu_affinity   CPUMASK ...: 指定worker进程与cpu绑定(只是绑定,不是独占cpu)   如:worker_cpu_affinity 00000001 00000010 00000100;
  3. worker_priority nice: 指定worker进程优先级【-20 -- 19】,数字越小,优先级越高,默认0


用于调试、定位问题的配置:

nginx.conf

main配置段:

  1. daemon off|on 是否以守护进程的方式启动nginx;
  2. master_process on|off 是否以master/worker模式运行nginx;
  3. error_log /PATH/TO/ERROR_LOG level:  错误日志文件及其级别,出于调试的需要,可以设定为debug,但debug仅在调试时使用了“--with debug”选项时才有效;

nginx.conf :
event配置段:
  1. work_connections: 每个worker进程能够响应的最大并发请求数量;  work_process * work_connections
  2. use [epoil | rgslg | select | poil]:  定义使用的事件模型,建议让nginx自动选择;
  3. accept_mutex [on | off]:  各worker接收用户请求的负载均衡锁,表示用于让多个worker轮流的、序列化的响应新请求;
  4. lock_file /PATH/TO/LOCK_FILE

nginx.conf:

server配置段:


套接字或主机相关的指令:

1.server{}    定义一个虚拟主机

server{

listen [PORT];

server_name[NAME];

root  /PATH/TO/DOCUMENTROOT;

}

...


注意: (1) 基于portlisten 指令监听在不同的端口

(2)基于hostnameserver_name指令指向不同的主机名


2. listen

listen [address]listen [port]

default_server;设置默认虚拟主机。用于基于IP地址,或使用了任意不能对应于任何一个server的name时所返回站点。

ssl: 用于限制只能通过ssl连接服务供应商,只能使用https协议访问。

spdy: SPDY protocol(speedy) 在编译了spdy模块的情况下,用于支持SPDY协议

http2: http version 2;


3. server_name NAME[...]

后可跟一个或多个主机名,名称还可以使用通配符和正则表达式(以~开头)

(1)首先做精确匹配:例如 www.magedu.com

(2)左侧通配符:例如 *.magedu.com

(3)右侧通配符:例如 www.magedu.*

(4)正则表达式: 例如 ~^.*\.magedu\.com$

(5)default_server:


4.tcp_nodelay on | off

对keepalive模式下的连接是否使用tcp_nodelay选项(当报文很小时是否等待其他报文一起发送,节省带宽,一般设为off,避免延迟)


5.tcp_nopush on | off

是否启用tcp_nopush(FREEBSE)或tcp_cork(linux),仅在send_file为on时有用


6. send_file on | off 

进程直接在内核空间对多个tpc报文头打包后一起发送,不用到内存空间处理(默认off,建议不一起打包)


路径相关的指令:

7.root

设置web资源的路径映射,用于指明请求url所对应文档目录路径

server {

...

root/data/www/vhost1;

比如:http://www.XXX.com/images/logo.jpg -->/data/www/vhost1/images/logo.jpg

}


server {

...

server_name www.XXX.com

location /images/ {

root /data/imgs/;// 当请求路径为images结尾时资源文档路径为/data/imgs/;

比如:http://www.XXX.com/images/logo.jpg -->/data/imgs/logo.jpg

}

}


8. location [url]{...}:

location @name {...}

功能:允许根据用户请求的url来匹配定义的location,匹配到时,此请求将为相应location块中的配置所处理;简言之,即用于为需要用到专用配置的url提供特定配置。

server {

...

server_name www.XXX.com

root /data/www;

location /admin/ {

}

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值