Nginx核心配置指令主要包括以下几个部分:

  1. 全局块

    • user: 指定运行Nginx的用户和用户组。

      user www-data;
    • worker_processes: 设置工作进程数,通常设置为CPU核心数。

      worker_processes auto;
    • error_log: 定义错误日志文件路径及日志级别。

      error_log /var/log/nginx/error.log warn;
    • pid: 指定Nginx主进程的PID文件路径。

      pid /var/run/nginx.pid;
  2. events块

    • worker_connections: 设置每个工作进程的最大连接数。

      events {
          worker_connections 1024;
      }
  3. http块

    • include: 包含其他配置文件。

      http {
          include /etc/nginx/mime.types;
      }
    • default_type: 设置默认的MIME类型。

      default_type application/octet-stream;
    • sendfile: 启用高效文件传输模式。

      sendfile on;
    • keepalive_timeout: 设置客户端连接保持活动的超时时间。

      keepalive_timeout 65;
    • gzip: 启用gzip压缩。

      gzip on;
  4. server块

    • listen: 指定服务器监听的端口和地址。

      server {
          listen 80;
      }
    • server_name: 设置服务器名称(域名)。

      server_name example.com;
    • location: 定义请求的URI匹配规则和处理方式。

      location / {
          root /var/www/html;
          index index.html index.htm;
      }
    • proxy_pass: 将请求转发到指定的后端服务器。

      location /api/ {
          proxy_pass http://backend_server;
      }
  5. upstream块

    • upstream: 定义一组后端服务器,用于负载均衡。

      upstream backend {
          server 192.168.1.1;
          server 192.168.1.2;
      }
  6. location块

    • root: 设置请求的根目录。

      location /static/ {
          root /var/www;
      }
    • index: 设置默认的索引文件。

      index index.html index.htm;
    • try_files: 尝试按顺序查找文件,直到找到为止。

      try_files $uri $uri/ =404;
  7. 其他常用指令

    • access_log: 定义访问日志文件路径及日志格式。

      access_log /var/log/nginx/access.log;
    • error_page: 自定义错误页面。

      error_page 404 /404.html;
    • rewrite: 重写URL。

      rewrite ^/old-url$ /new-url permanent;

这些是Nginx的核心配置指令及其基本用法,实际配置中可以根据需求进行调整和扩展。

本篇文章内容来源于:Nginx核心配置指令详细说明以及案例