hand
_1_14_123
4
返回栏目
1k
2k
0.4k
0.6k
0.9k
0.7k
3k
2k
0.1k
1k
0k
1k
0k
0.4k
0.3k
0.1k
0.6k
0k
1k
3k
2k
0k
0k
0.4k
2k
1k
0k
6k
0.8k
1k
0.5k
2k
0k
0k
0k
2k
0k
4k
2k
1k
1k
2k
0k
0.5k
0k
1k
0.2k
0.3k
0.1k
0k
0k
0.8k
1k
0.6k
0k
0k
2k
0.6k
1k
2k
2k
0.6k
0.6k
0.5k
1k
2k
0.5k
0.1k
0.2k
4k
0k
0.1k
0.8k
1k
0.3k
0k
0.3k
0.1k
1k
8k
0.1k
0.7k
0.1k
0.3k
0.9k
0.2k
4k
0.2k
6k
3k
3k
1k
3k
0.1k
1k
0.2k
0k
0.7k
0.4k
2k
2k
0.5k
0.8k
5k
0.1k
0.3k
0.3k
0.5k
0.1k
1k
0k
0.7k
0.2k
2k
2k
1k
6k
3k
1k
2k
1k
2k
2k
1k
0k
0k
1k
0k
0k
0.3k
0.3k
0.2k
0k
0.3k
0k
1k
0.1k
0.6k
0k
0k
0k
0k
0k
0.1k
0k
0k
0k
0.2k
0k
0.2k
0k
0k
0k
0k
0k
0k
0k
0.9k
1k
2k
0.8k
0.4k
0k
0k
0k
0.5k
0k
0k
0k
0k
0.4k
0k
0k
0.1k
返回服务器栏目
作者:
贺及楼
成为作者
更新日期:2024-05-13 00:56:15
有5个配置段
main # 全局 配置段
events {} # 用户网络连接 配置段
http { # http连接 配置段
upstream {} # 负载均衡配 置段
server {} # 服务器 配置段
}
user root;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;
events {}
http {
upstream name {
server 192.168.92.134:8000;
server 192.168.92.134:8001;}
server{listen 80;}
server{
listen # 监听地址和端口
listen 443; # 监听地址和端口 例子
server_name # 主机名
root # 站点根目录(document_root)
alias # 路径别名
location /static {}}
}
##############################
# 正常运行必备的配置:
##############################
user nginx nginx
# Nginx用户及组:用户 组。window下不指定
# 新建用户useradd命令:
# useradd nginx -s /sbin/nologin -M
# -s<shell>:指定用户登入后所用的shell
# -M:不要自动建立用户的登入目录
# 终端查看命令
# ps aux | grep nginx
# pid /PATH/TO/PID_FILE # 指定存储nginx主进程进程号码的文件路径
pid logs/nginx.pid # pid(进程标识符):存放路径。
# include file | mask # 指明包含进来的其它配置文件片断
include /etc/nginx/modules-enabled/*.conf;
# load_module file; # 指明要装载的动态模块
##############################
# 优化性能相关的配置:
##############################
#worker_processes number | auto
# worker_processes 8
worker_processes auto
# worker进程的数量
# 根据硬件调整,通常等于CPU数量或者2倍于CPU
# 通常应该等于小于当前主机的cpu的物理核心数
# auto:当前主机物理CPU核心数
# worker_cpu_affinity cpumask …
# worker_cpu_affinity auto [cpumask]
# worker_cpu_affinity auto
# worker_cpu_affinity 00010000 00100000 01000000 10000000
# worker与CPU进行绑定
# 如果此服务器主要是做nginx服务器的话,可是使用此配置
# 如果还有其它重要程序运行,不建议使用
# CPU MASK:
# 00000000 # 8个CPU的表示
# 00000001 # 0号CPU
# 00000010 # 1号CPU
# ... ...
# 服务器有8个CPU,nginx服务要启用4个worker进程
# 可以使用auto进行自动分配,也可以使用手动绑定
# 比如绑定后四个CPU,就是4、5、6、7号CPU(00010000、00100000、01000000、10000000)
# worker_priority number;
# 指定worker进程的nice值,设定worker进程优先级;[-20,20]
# ps axo comm,pid,psr,ni | grep nginx # 默认nice值是0
# nginx 7209 0 0
# nginx 8812 3 0
# nginx 8813 2 0
# nginx 8814 1 0
# worker_rlimit_nofile number
# worker_rlimit_nofile 204800 # 指定进程可以打开的最大描述符:数目。
# (这里小乱)
# 所有worker进程所能够打开的文件数量上限
# 一个进程至少需要打一个套接字文件,1024个进程就需要至少打开1024个套接字文件
# 3个worker进程至少需要打开3*1024=3072个文件
# 这个指令是指当一个nginx进程打开的最多文件描述符数目
# 理论值应该是最多打开文件数(ulimit -n)与nginx进程数相除
# 但是nginx分配请求并不是那么均匀,所以最好与ulimit -n 的值保持一致。
# 现在在linux 2.6内核下开启文件打开数为65535,worker_rlimit_nofile就相应应该填写65535。
# 这是因为nginx调度时分配请求到进程并不是那么的均衡
# 所以假如填写10240,总并发量达到3-4万时就有进程可能超过10240了,这时会返回502错误。
##############################
# 用于调试及定位问题相关的配置:
##############################
# daemon on|off;
# 是否以守护进程方式运行Nignx;(CentOS 7不需要)
# master_process on|off;
# 是否以master/worker模型运行nginx;默认为on
# error_log file [level];
error_log logs/error.log # 错误日志:存放路径。
error_log logs/error.log notice # 错误日志:存放路径。
error_log logs/error.log info # 错误日志:存放路径。
服务器
整章节共174节
快分享给你的小伙伴吧 ~