nginx的配置文件结构
nginx.conf由多个块组成,最外面的块是main,main包含events和http,http包含多个upstream和多个server,server又包含多个location:
main(全局设置)、server(虚拟主机设置)、upstream(负载均衡服务器设置)和 location(URL匹配特定位置的设置)。
main 块设置的指令将影响其他所有设置;
server 块的指令主要用于指定主机和端口,以及网站路径;
upstream 指令主要用于负载均衡,设置一系列的后端服务器;
location 块用于匹配网页位置。
这四者之间的关系式:server继承main,location继承server,upstream既不会继承其他设置也不会被继承。
在这四个部分当中,每个部分都包含若干指令,这些指令主要包含Nginx的主模块指令、事件模块指令、HTTP核心模块指令,同时每个部分还可以使用其他HTTP模块指令,例如Http SSL模块、HttpGzip Static模块和Http Addition模块等。
nginx的全局配置
#指定使用的用户和组
#user nginxnginx;
#启动进程,通常设置成和cpu的数量相等
worker_processes 1;
#全局错误日志
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#PID文件--存放进程号的文件
#pid logs/nginx.pid;
events配置
#工作模式及连接数上限
events {
#单个后台worker process进程的最大并发链接数
worker_connections 1024;
#并发总数是 worker_processes 和 worker_connections 的乘积
#Nginx支持如下处理连接的方法(I/O复用方法),这些方法可以通过 use指令指定。
#use [ kqueue | rtsig | epoll | /dev/poll | select | poll];
use epoll; #使用 epoll(linux2.6的高性能方式)
}
http的配置
http {
#Nginx对HTTP服务器相关属性的配置
include mime.types;
default_type application/octet-stream;
#设定虚拟主机配置
server {
#侦听80端口
listen 80;
#定义使用 www.itsource.cn访问
server_name www.itsource.cn;
root html;
location {
}
location {
}
…..
}
server {
#侦听80端口
listen 80;
#定义使用 www.example.cn访问
server_name www.example.cn;
root html;
location {
}
location {
}
…..
}
}include是个主模块指令,实现对配置文件所包含的文件的设定,可以减少主配置文件的复杂度。类似于Apache中的include方法。
default_type属于HTTP核心模块指令,这里设定默认类型为二进制流,也就是当文件类型未定义时使用这种方式,例如在没有配置PHP环境时,Nginx是不予解析的,此时,用浏览器访问PHP文件就会出现下载窗口。
server块的指令主要用于指定主机和端口(虚拟主机);
location部分主要用于匹配网页位置,设置不同的功能特征. 比如:缓存,重定向等..
微信扫描即可打赏
服务器好贵
网站需要运营
给点小费以表支持
评论已关闭