nginx.conf常用配置

server{
    listen 9001;    // 使该服务器块监听在 TCP 端口 9001 上
    listen 9000 ssl http2;   // 使该服务器块在 TCP 端口 9000 上监听 HTTPS 请求,并启用 HTTP/2 协议。
    server_name siyuan.terwergreen.com;  // 定义该服务器块的服务器名称为 siyuan.terwergreen.com
    index index.php index.html index.htm default.php default.htm default.html; // 定义默认的索引文件列表,当访问目录时,Nginx 会按照此列表中的顺序查找这些文件,并返回第一个找到的。
    root /var/www/html;  // 设置文档根目录为 /var/www/html。

    if ($server_port !~ 9000){   
        rewrite ^(/.*)$ https://$host$1 permanent;  // 如果请求的端口不是 9000,则执行重定向到 HTTPS。这确保非 HTTPS 请求(即端口 9001 上的请求)被重定向到 HTTPS。
    }
    # HTTP_TO_HTTPS_END

    # SSL 配置部分:
    ssl_certificate        /etc/ssl/siyuan.pem;   // SSL 证书路径
    ssl_certificate_key    /etc/ssl/siyuan.key;  // 证书私钥路径
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;  // 持的 SSL/TLS 协议版本
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;  // 定义支持的加密套件
    ssl_prefer_server_ciphers on;  // 优先使用服务器上的加密套件
    ssl_session_cache shared:SSL:10m;   // 设置 SSL 会话缓存 
    ssl_session_timeout 10m;   // 设置 SSL 会话缓存超时时间
    error_page 497  https://$host$request_uri;    // 定义如何处理 497 HTTP 状态码,这里是将请求重定向到 HTTPS。
    # SSL-END

    # 对所有路径的请求的处理规则:
    location / {   
        proxy_set_header   X-Real-IP $remote_addr;   // 设置请求头部 X-Real-IP,其值为客户端的真实 IP 地址($remote_addr)。通常用于后端服务器识别原始客户端的 IP 地址,特别是在 Nginx 作为反向代理时。
        proxy_set_header   Host      $http_host;   // 设置Host 头部,其值为请求中的 Host 头部字段
        proxy_pass         http://[ip]:[端口];   // proxy_pass 将请求代理到另一个服务器,实际配置中需要替换为实际的 IP 地址和端口。
        proxy_set_header Upgrade $http_upgrade;  // 设置 Upgrade 头部,其值来自请求中的 Upgrade 头部。这通常用于支持 HTTP/1.1 的 Upgrade 机制,如 WebSocket 连接
        proxy_set_header Connection 'Upgrade';  // 设置 Connection 头部为 Upgrade。这告诉后端服务器客户端希望升级连接(例如,从 HTTP 升级到 WebSocket)
        client_max_body_size 100m;  // 允许客户端请求的最大体大小为 100MB
    }

    # 对路径以 /ws 开头的请求的处理规则
    location /ws {
        proxy_pass         http://[ip]:[端口];
        proxy_read_timeout 60s;   // 设置了代理读取超时时间为 60 秒
        proxy_http_version 1.1;   // 强制使用 HTTP/1.1 协议版本
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'Upgrade';
    }
}

 

posted @ 2024-03-22 10:47  行走的蒲公英  阅读(21)  评论(0编辑  收藏  举报