您的位置:首页 > 运维架构 > Nginx

Nginx配置文件详解

2020-04-29 21:26 106 查看

原文地址: Geekinns

Nginx配置文件组成部分

第一部分: 全局快

从配置文件开始到events块之间的内容
,主要设置一些
影响nginx服务器整体运行的配置指令
,主要包括配置运行Nginx服务器的用户(组)、允许生成的 worker_process数,进程PID存放路径、日志存放路径和类型以及配置文件的引入等。

第二部分: events块

events块涉及的指令主要影响**

Nginx服务器与用户的网络连接
**,常用的设置包括是否开启对多worker_process下的网络连接进行序列化,是否允许同时接收多个网络连接,选取哪种事件驱动模型来处理连接请求,每个worker_process可以同时支持的最大连接数等。

第三部分: http块

此部分为Nginx服务器配置中最频繁的部分,代理、缓存和日志自定义等绝大多数功能和第三方模块的配置都在这里,

http块包括http全局快,server块

Ⅰhttp全局快

http全局快配置的指令包括文件引入,MIME-TYPE定义,日志自定义,连接超时时间,单链接请求数上限等。

Ⅱ server块

此部分和虚拟主机有密切关系,虚拟主机从用户角度看,和一台独立的硬件主机时完全一样的,该技术的产生是为了节约互联网服务器硬件成本。

每个http块可以包括多个server块,每个server块就相当于一个虚拟主机

server块分为全局server块,以及可以同时包含多个location块

1.全局server块

配置虚拟主机的相关参数

2.location块

配置请求的路由,以及各种页面的处理情况

配置文件详解

worker_processes  2;	#允许生成的进程数
error_log  logs/error.log  info;	#全局错误日志定义类型
pid        /nginx-1.13.7/nginx.pid;	#记录主进程ID的文件
worker_rlimit_nofile 65535;

events {
multi_accept on;	#设置一个进程是否同时接受多个网络连接
worker_connections  666;	#连接数上限,单个进程允许的最大连接数
}

#设定http服务器,利用它的反向代理功能提供负载均衡支持
http {
include       mime.types;   #文件扩展名与文件类型映射表
default_type  application/octet-stream; #默认文件类型,默认为text/plain
#access_log off; #取消服务日志
#日志格式
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 记录了哪些用户,哪些页面以及用户浏览器、ip和其他的访问信息
access_log log/access.log myFormat;  #combined为日志格式的默认值

sendfile_max_chunk 100k;  #每个进程每次调用传输数量的最大值
keepalive_timeout 75;  #连接超时时间,默认为75s

upstream mysvr {
server 127.0.0.1:7878;
server 192.168.10.121:3333 backup;  #热备
}
error_page 404 https://www.baidu.com; #错误页

server {
keepalive_requests 120; #单连接请求上限次数。
listen       80;   #监听端口
server_name  www.geekinns.cn;   #监听地址(多个时用空格隔开)

location  ~*^.+$ {       #请求的url过滤
#root path;     #根目录
#index vv.txt;  #设置默认页
proxy_pass  http://mysvr;  #请求转向mysvr定义的服务器列表
deny 127.0.0.1;    #拒绝的ip
allow 172.18.5.54; #允许的ip
}
}

# 以下为443端口配置
#    server {
#    	listen 443;		#SSL的访问端口号为 443
#    	server_name www.geekinns.cn;     #填写绑定证书的域名
#    	root /home/hexo;    #你的站点目录
#
#    	ssl_certificate /home/SSL/1_www.geekinns.cn_bundle.crt;   #证书文件路径
#    	ssl_certificate_key /home/SSL/2_www.geekinns.cn.key;   #私钥文件路径
#    	ssl_session_timeout 5m;
#    	ssl_protocols TLSv1 TLSv1.1 TLSv1.2;    #使用的协议
#    	ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;  #配置加密套件
#    	ssl_prefer_server_ciphers on;
#
#    	location / {
#    	    index  index.html;
#    	}
#    }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: