Nginx 的配置文件


Nginx 的配置文件是控制 Nginx 服务器行为的重要组成部分。Nginx 的配置文件通常位于 /etc/nginx 目录下(Linux 系统),主要有两个文件:

  1. nginx.conf: 这是主要的 Nginx 配置文件,包含了全局配置,主要的服务器配置,以及引入其他配置文件的指令。
  2. sites-available 和 sites-enabled 目录: 这两个目录用于存放虚拟主机(Virtual Host)的配置文件。sites-available 中存放所有可用的虚拟主机配置文件,而 sites-enabled 中存放启用的虚拟主机配置文件的符号链接。

以下是一个简单的 Nginx 配置文件的示例:

# 全局配置
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;

# 事件模块配置
events {
    worker_connections 1024;
}

# HTTP 模块配置
http {
    include /etc/nginx/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;

    # 虚拟主机配置
    include /etc/nginx/sites-enabled/*;
}

在上述配置文件中:

  • user 指定 Nginx 进程的运行用户。
  • worker_processes 设置 Nginx 启动的 worker 进程数量。
  • error_log 配置错误日志的路径。
  • events 模块用于配置 Nginx 的事件处理机制。
  • http 模块包含 HTTP 服务器的配置。
  • include 指令用于引入其他配置文件。
  • log_format 定义日志的格式。
  • access_log 配置访问日志的路径和格式。
  • include /etc/nginx/sites-enabled/*; 引入 sites-enabled 目录下的虚拟主机配置。

虚拟主机的配置文件可能包含类似以下的内容:

server {
    listen 80;
    server_name example.com www.example.com;

    location / {
        root /var/www/html;
        index index.html;
    }

    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /var/www/html;
    }
}

上述配置定义了一个简单的 HTTP 服务器,监听在 80 端口,处理 example.comwww.example.com 的请求,指定了静态文件的根目录和错误页面的处理。

请注意,Nginx 配置非常灵活,可以根据具体需求进行更复杂的配置。阅读 Nginx 文档 可以更详细地了解配置文件的各个部分和指令。


原文链接:codingdict.net