当前位置: 首页 > news >正文

nginx主配置文件说明


Nginx 主配置文件说明

Nginx 的主配置文件 (nginx.conf) 控制着 Nginx 的全局行为以及各个虚拟主机的设置。理解主配置文件的结构和各个指令的作用对于正确配置 Nginx 至关重要。本文将详细介绍 Nginx 主配置文件的基本结构和常见指令。

1. Nginx 主配置文件的基本结构

Nginx 的主配置文件通常位于 /etc/nginx/nginx.conf(在 Linux 系统中)。它由多个上下文组成,每个上下文可以包含一系列指令。以下是主配置文件的基本结构:

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;events {worker_connections 1024;
}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"';access_log  /var/log/nginx/access.log  main;sendfile        on;tcp_nopush      on;tcp_nodelay     on;keepalive_timeout  65;types_hash_max_size 2048;include /etc/nginx/conf.d/*.conf;include /etc/nginx/sites-enabled/*;
}

2. 主要上下文和指令

2.1 user

  • 作用:指定 Nginx 进程运行时所使用的用户和组。
  • 示例
    user nginx;
    

2.2 worker_processes

  • 作用:指定 Nginx 启动的工作进程数量。
  • 示例
    worker_processes auto;
    

2.3 error_log

  • 作用:指定 Nginx 错误日志的路径。
  • 示例
    error_log /var/log/nginx/error.log;
    

2.4 pid

  • 作用:指定存放 Nginx 主进程 PID 的文件路径。
  • 示例
    pid /run/nginx.pid;
    

2.5 events

  • 作用:定义与事件处理相关的配置,如连接处理方式。
  • 示例
    events {worker_connections 1024;
    }
    

2.6 http

  • 作用:定义 HTTP 相关的行为,包括服务器块、请求处理、日志记录等。
  • 示例
    http {# 各种 HTTP 设置
    }
    

2.7 log_format

  • 作用:定义日志格式。
  • 示例
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';
    

2.8 access_log

  • 作用:指定 Nginx 访问日志的路径和格式。
  • 示例
    access_log  /var/log/nginx/access.log  main;
    

2.9 sendfile

  • 作用:启用或禁用使用内核的 sendfile 函数。
  • 示例
    sendfile        on;
    

2.10 tcp_nopush

  • 作用:禁止 TCP 包分段。
  • 示例
    tcp_nopush      on;
    

2.11 tcp_nodelay

  • 作用:启用 Nagle 算法的禁用,即立即发送数据。
  • 示例
    tcp_nodelay     on;
    

2.12 keepalive_timeout

  • 作用:设置空闲超时时间。
  • 示例
    keepalive_timeout  65;
    

2.13 types_hash_max_size

  • 作用:设置 MIME 类型哈希表的最大大小。
  • 示例
    types_hash_max_size 2048;
    

2.14 include

  • 作用:包含其他配置文件。
  • 示例
    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;
    

3. 服务器块(server)

http 上下文中,可以定义一个或多个 server 块来配置虚拟主机。每个 server 块可以包含多个指令,例如:

server {listen 80;server_name example.com www.example.com;# 更多配置
}
  • listen:指定监听的端口和 IP 地址。
  • server_name:指定虚拟主机的域名。

4. 位置块(location)

server 块中,可以使用 location 块来定义特定 URL 的处理方式。

location / {root /var/www/html;index index.html index.htm;
}location /api {proxy_pass http://backend;
}
  • root:指定文档根目录。
  • index:指定默认索引文件。
  • proxy_pass:配置反向代理。


http://www.mrgr.cn/news/3472.html

相关文章:

  • win10 / win11 永久暂停自动更新方法
  • LLM小模型系列研究(01)
  • STM32- 笔记2
  • CSS:display和visiblity
  • 小白学大模型:GLM 调用教程
  • FlinkCDC初体验
  • 关于c++ grpc 和 c# grpc 通信的问题 以及 grpc 认证问题
  • 公开课观后感:密歇根大学python for everyone
  • 初识redis:Set类型
  • 【实战场景】如何优雅实现分页
  • 20240821给飞凌OK3588-C的核心板刷Rockchip原厂的Buildroot并挂载1TB的exFAT格式的TF卡
  • ARM 裸机与 Linux 驱动对比及 Linux 内核入门
  • 【ARM+Codesys 客户案例 】 基于RK3568/A40i/STM32+CODESYS在工厂自动化中的应用:铆接机
  • Android强大的滚动控件RecyclerView
  • 反向沙箱是什么?如何使用反向沙箱保障上网安全
  • Ecosmos开启公测,将深度赋能CIOE中国光博会元宇宙参会新体验
  • Excel平均值与减法技巧
  • Python编码系列—前端后浪:Python前后端分离开发实战指南
  • 图片太大不能上传怎么压缩变小?图片压缩变小的8个方法
  • 极限02:两个重要极限