Nginx配置文件编写(基础配置)
发布日期:2021-05-19 16:01:44 浏览次数:12 分类:精选文章

本文共 2137 字,大约阅读时间需要 7 分钟。

从简单的Nginx配置文件入手

如何使用自定义配置文件

Nginx默认的配置文件位于/usr/local/nginx/conf/nginx.conf。如果需要使用自定义配置文件,可以在运行时指定路径:

./sbin/nginx -c my_conf/my_conf.conf

关于Nginx命令行参数,可以用./sbin/nginx -h查看完整帮助信息。

Nginx配置文件的结构

Nginx配置文件由多个指令组成,包括简单指令和块指令。基本语法格式为:

配置项名:配置项值;

配置文件主要分为四个部分:

  • main:全局配置,用于设置与具体业务无关的参数。

    • worker_processes 4;:设置要起的worker进程数。
    • events { worker_connections 1024; }:设置每个worker进程的最大连接数。
  • events:配置连接属性。

    • worker_connections 1024;:每个worker进程的最大连接数。
  • http:配置业务功能。

    • server { listen 192.254.1.16:9000; server_name 192.254.1.16; location / { root /usr/local/nginx/html/; } }:指定服务器监听地址和处理请求的位置。
  • server:配置主机。

    • listen 192.254.1.16:9000;:指定端口号。
    • server_name 192.254.1.16;:指定主机名。
    • location / { root /usr/local/nginx/html/; }:指定资源位置。
  • Nginx服务的基本配置

    Nginx的基本配置可以分为机器、性能和事件三个方面。

    用于调试进程和定位问题的配置项

  • 设置守护进程模式

    • daemon on;:默认设置,Nginx以守护进程运行。
    • daemon off;:关闭守护进程模式。
  • 设置主进程/工作进程模式

    • master_process on;:默认设置,启用master/worker模式。
    • master_process off;:禁用master/worker模式。
  • 设置错误日志路径

    • error_log logs/error.log error;:指定错误日志文件路径和日志级别。
  • 调试点配置

    • debug_points stopdebug_points abort;:设置调试点,用于调试特定错误。
  • 限制核心转储文件大小

    • worker_rlimit_core [size];:设置核心转储文件的最大大小。
  • 正常运行的配置项

  • 环境变量设置

    • env TESTPATH = /tmp/;:设置操作系统环境变量。
  • 包含其他配置文件

    • http { include mime/types; }:嵌入其他配置文件。
  • 设置pid文件路径

    • pid /var/run/nginx.pid;:指定Nginx的pid文件路径。
  • 指定运行用户和组

    • user nginx; group nginx;:设置worker进程的运行用户和组。
  • 设置最大文件句柄数

    • worker_rlimit_nofile [limit];:限制worker进程打开文件的最大数量。
  • 限制信号队列大小

    • worker_rlimit_sigpending [limit];:设置信号队列的最大长度。
  • 优化性能的配置项

  • 设置worker进程数

    • worker_processes 1;:通常与CPU核数保持一致。
  • 绑定worker进程到特定CPU

    • worker_puc_affinity 0x1;:让worker进程只绑定到特定CPU核。
  • 启用SSL硬件加速

    • ssl_engine device;:利用服务器的硬件加速SSL/TLS。
  • 设置系统调用gettimeofday的频率

    • timer_resolution 1000000;:设置系统调用gettimeofday的最低频率。
  • 设置worker进程优先级

    • worker_priority 0;:设置worker进程的优先级。
  • 事件类配置项

  • 设置accept锁

    • accept_mutex on;:默认设置,启用accept锁。
    • accept_mutex off;:关闭accept锁,允许更多连接快速建立。
  • 设置锁文件路径

    • lock_file logs/nginx.lock;:指定锁文件路径。
  • 设置accept锁重试延迟

    • accept_mutex_delay 500ms;:设置失败后的重试延迟时间。
  • 禁止批量接受

    • multi_accept off;:禁止批量接受新连接。
  • 选择事件模型

    • use epoll;:启用epoll事件模型。
    • use select;:启用select事件模型。
    • use poll;:启用poll事件模型。
    • use kqueue;:启用kqueue事件模型。
  • 设置最大连接数

    • worker_connections 1024;:每个worker进程的最大连接数。
  • 通过合理配置这些参数,可以有效提升Nginx的性能和稳定性。在实际使用中,可以根据具体需求选择和调整这些配置项,以达到最佳的性能效果。

    上一篇:搞清楚socket
    下一篇:Nginx初步(反向代理/Web服务器/轻量级)

    发表评论

    最新留言

    路过,博主的博客真漂亮。。
    [***.116.15.85]2025年05月04日 19时16分25秒