Nginx 常用配置
创始人
2024-11-15 12:09:45
0次

一、全局配置

全局配置主要设置一些影响Nginx服务器整体运行的配置指令,包括运行Nginx的用户和组、进程数、日志文件路径等。

用户和组:user [user] [group]; 指定运行Nginx的用户和用户组,默认为nobody。

进程数:worker_processes auto; 指定工作进程的数量,建议设置为CPU核心数或核心数的倍数。

错误日志:error_log /var/log/nginx/error.log; 指定全局错误日志文件的路径。

PID文件:pid /run/nginx.pid; 指定记录主进程ID的文件的路径。

二、事件处理配置(events块)

events块主要影响Nginx服务器与用户的网络连接,包括连接数、事件驱动模型等。

最大连接数:worker_connections 1024; 指定单个后台worker process进程的最大并发连接数。

事件驱动模型:use epoll; 在Linux系统中,使用epoll作为事件驱动模型可以显著提高Nginx的性能。

连接序列化:accept_mutex on; 开启后,会对多个Nginx进程接收连接进行序列化,防止惊群现象。

三、HTTP配置(http块)

http块是Nginx配置中最频繁的部分,包括文件类型映射、日志格式、访问控制、反向代理、负载均衡等。

文件类型映射:include mime.types; 加载mime.types文件,该文件包含了文件扩展名与文件类型的映射关系。

日志格式:通过log_format和access_log指令定义和指定日志格式及日志文件的路径。

文件传输:sendfile on; 启用sendfile功能,减少用户空间到内核空间的上下文切换,提高文件传输效率。

连接超时:keepalive_timeout 65; 设置客户端与服务器之间的连接保持时间。

四、反向代理与负载均衡

Nginx作为反向代理服务器,可以配置为将客户端请求转发到后端服务器,并可以根据需要配置负载均衡策略。

反向代理基本配置:

server {     listen       80; # 监听80端口     server_name  localhost; # 服务器名,这里使用localhost作为示例      location / {         # 反向代理配置         proxy_pass http://localhost:8080; # 将请求转发到http://localhost:8080          # 以下配置是可选的,但通常很有用         proxy_set_header Host $host; # 将原始请求头中的Host字段转发到后端服务器         proxy_set_header X-Real-IP $remote_addr; # 将客户端的真实IP地址转发到后端服务器         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 转发客户端的IP地址和原始请求的IP地址列表          # 如果后端服务需要处理WebSocket连接,请取消以下行的注释         # proxy_http_version 1.1;         # proxy_set_header Upgrade $http_upgrade;         # proxy_set_header Connection "upgrade";          # 其他可能的代理设置...     }      # 其他server块... } 

负载均衡配置: 在http块中,可以使用upstream指令定义一个后端服务器组,并在server块中使用proxy_pass指令引用该组。Nginx支持多种负载均衡策略,如轮询、加权轮询、IP哈希等。

upstream myapp1 {     server backend1.example.com weight=5;     server backend2.example.com;     server backup1.example.com backup; } server { } 

五、动静分离配置

server {     listen 80;     server_name yourdomain.com;      # 处理静态资源     location ~* \.(html|htm|gif|jpg|jpeg|png|ico|css|js|txt)$ {         root /path/to/your/static/files;         expires 30d; # 设置浏览器缓存时间     }     # vue 服务器      location / {         root /usr/share/nginx/html/vue-app; # 指向Vue打包文件的目录         try_files $uri $uri/ /index.html; # 对于Vue单页应用,尝试匹配静态文件,如果未找到,则返回index.html     }      # 处理动态资源,转发到Tomcat     location / {         proxy_pass http://localhost:8080;         proxy_set_header Host $host;         proxy_set_header X-Real-IP $remote_addr;         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;     } } 

六、其他常用配置

SSL/TLS配置:用于支持HTTPS协议,保护数据传输的安全性。

Gzip压缩:通过gzip指令开启Gzip压缩功能,减少数据传输量,提高传输效率。

缓存配置:Nginx支持对静态文件进行缓存,减少后端服务器的负载。

相关内容

热门资讯

不少玩家反映开挂教材!大胜跑得... 不少玩家反映开挂教材!大胜跑得快多功能开挂工具,大胜跑得快一贯存在有辅助工具运大胜跑得快辅助工具,进...
我来向大家传授外挂攻略!逍遥皖... 我来向大家传授外挂攻略!逍遥皖北棋牌多功能外挂攻略,逍遥皖北棋牌本来有外挂攻略1、每一步都需要思考,...
一分钟了解开挂手筋!威信茶馆大... 一分钟了解开挂手筋!威信茶馆大二多功能开挂工具,威信茶馆大二原来真的是有辅助工具1、金币登录送、破产...
推荐一款外挂攻略!悠乐汇多功能... 推荐一款外挂攻略!悠乐汇多功能外挂攻略,悠乐汇真是是有外挂攻略1、全新机制【悠乐汇ai辅助工具激活码...
一分钟快速了解开挂技巧!闲来麻... 一分钟快速了解开挂技巧!闲来麻将多功能开挂技巧,闲来麻将果然真的有开挂技巧1、下载好闲来麻将透视辅助...
重大消息辅助挂课程!同城游贵阳... 重大消息辅助挂课程!同城游贵阳捉鸡麻将多功能辅助挂软件,同城游贵阳捉鸡麻将一贯真的有辅助软件1、点击...
玩家必知教程透视阶段!蜀州麻将... 玩家必知教程透视阶段!蜀州麻将海宁多功能透视教程,蜀州麻将海宁竟然是有辅助教程1)蜀州麻将海宁有没有...
详细说明透视器插件!云鹤九霄多... 详细说明透视器插件!云鹤九霄多功能透视器插件,云鹤九霄一贯真的是有透视器插件1)云鹤九霄辅助插件:进...
玩家必备教程外挂教程!小白大作... 玩家必备教程外挂教程!小白大作战多功能外挂教程,小白大作战竟然真的是有外挂教程1、用户打开应用后不用...
推荐十款透视挂要领!放炮罚多功... 推荐十款透视挂要领!放炮罚多功能透视挂工具,放炮罚好像是有辅助工具小薇(辅助器软件下载)致您一封信;...