Nginx常用配置之详解(Detailed Explanation of Common Nginx Configurations)

Nginx常用配置详解(图文全面总结)

Nginx

Nginx 是一款轻量级的高性能 HTTP、 和反向代理服务器。

Nginx,被广泛用于负载均衡、静态文件服务、和代理.........等。

Nginx,以高并发、低内存占用、和高可用性著称,大部分的大厂以及公司都在使用。

在使用的过程中,最为大家经常使用的,就是"Nginx怎么配置"的问题。

Nginx常用配置

Nginx 的配置文件,通常位于:/etc/nginx/nginx.conf。

Nginx的配置,采用模块化的层级结构,如下图所示:

Nginx的配置,一般是采用从上到下的配置,这里会涉及到比较重要的几大"Nginx常用配置"。

比如:

1.全局块

全局块,主要用于:配置全局参数,例如:工作进程数、用户组、日志路径等。

如下图所示:

全局块,一般是在整个配置的顶部,如下所示:

复制代码
`worker_processes auto;``error_log /var/log/nginx/error.log;``pid /run/nginx.pid;`
复制代码
上面的配置,主要会包含如下参数:

worker_processes

worker_processes,工作进程数,可以设置为 auto(自动配置),就是上面我的配置;

worker_processes,或固定数值,通常设置为 CPU 核数。

error_log

错误日志路径及日志级别,比如:

复制代码
/var/log/nginx/error.log

,这就是你自己设定的错误目录。

pid

pid,指定存放主进程 ID 的文件路径。

2.events 块

events 块,主要用于配置与网络连接工作线程相关的参数。

复制代码
worker_connections 1024
复制代码
比如:worker_connections:1024,表示:每个工作进程可以同时打开的最大连接数为:1024。

3.http 块

配置 HTTP 服务的全局设置,包括:MIME 类型、请求日志、Gzip 压缩、连接超时.........等。

复制代码
`http {``    include       mime.types;``    default_type  application/octet-stream;``    log_format    main  '$remote_addr - $remote_user [$time_local] "$request" '``                        '$status $body_bytes_sent "$http_referer" '``                        '"$http_user_agent" "$http_x_forwarded_for"';``    ``    sendfile      on;``    keepalive_timeout  65;``    gzip on;``    ...``}`
复制代码
sendfile

sendfile,启用高效传输模式,减少资源占用。

keepalive_timeout

keepalive_timeout,保持连接的超时时间,提升访问性能。

gzip

gzip,启用 Gzip 压缩。

4.server 块

server 块,用于定义一个虚拟主机,可包含多个:location 块。

如下图所示:

复制代码
`server {``    listen       80;``    server_name  example.com www.example.com;`
`    location / {``        root   /usr/share/nginx/html;``        index  index.html index.htm;``    }``}`
  • listen:指定监听端口(例如 80 或 443)。

  • server_name:定义服务器名称,可以是域名、IP 或通配符。

  • access_log:访问日志路径。

location 块,用于匹配请求 URL 路径,常用匹配类型有以下几种:

  • 精确匹配:如:location = /path;

  • 前缀匹配:如:location /path,匹配以 /path 开头的请求;

  • 正则匹配:如 location ~* \.php$,匹配 .php 结尾的请求(区分大小写)。

以上是 Nginx 常见配置的详解!

相关推荐
子兮曰16 小时前
OpenClaw入门:从零开始搭建你的私有化AI助手
前端·架构·github
不像程序员的程序媛19 小时前
Nginx日志切分
服务器·前端·nginx
晚霞的不甘19 小时前
CANN 在工业质检中的亚像素级视觉检测系统设计
人工智能·计算机视觉·架构·开源·视觉检测
island131419 小时前
CANN HIXL 高性能单边通信库深度解析:PGAS 模型在异构显存上的地址映射与异步传输机制
人工智能·神经网络·架构
岁岁种桃花儿20 小时前
Flink CDC从入门到上天系列第一篇:Flink CDC简易应用
大数据·架构·flink
秋邱20 小时前
AIGC 的“隐形引擎”:深度拆解 CANN ops-math 通用数学库的架构与野心
架构·aigc
小a杰.20 小时前
CANN技术深度解析
架构
YongCheng_Liang21 小时前
从零开始学 Python:自动化 / 运维开发实战(核心库 + 3 大实战场景)
python·自动化·运维开发
向哆哆21 小时前
CANN生态深度解析:ops-nn仓库的核心架构与技术实现
架构·cann
笔画人生21 小时前
系统级整合:`ops-transformer` 在 CANN 全栈架构中的角色与实践
深度学习·架构·transformer