首页 > 系统相关 >nginx.conf常用配置

nginx.conf常用配置

时间:2024-03-22 10:56:51浏览次数:22  
标签:常用 Upgrade 请求 ssl nginx proxy conf 服务器 SSL

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';
    }
}

 

标签:常用,Upgrade,请求,ssl,nginx,proxy,conf,服务器,SSL
From: https://www.cnblogs.com/shyhuahua/p/18088964

相关文章

  • visual studio如何测试http接口?(常用的接口测试工具)
    1.情景展示用了这么多年,一直在用notepad++来记录临时文件内容。现在改用visualstudio后,发现这个前端开发工具是可以调http接口的。为什么要在visualstudio中测试http接口?作为一个后端工程师,与接口打交道可谓是家常便饭,最开始自己使用的是:在chrome上的postman插件,后来chro......
  • web常用控件和弹窗
    web常见控件介绍 常见的控件: 1.文本输入框(TextBox) 2.按钮控件(Button) 3.下拉选框(DropList) 4.日期/时间控件(Date/TimePicker) 5.(图片、文件)上传控件(Upload)  6.树形控件(TreeView) 7.列表框(ListBox) 8.多格式文本框(RichTextBox)  9.Tab控件10.其他控件......
  • 基于security-oauth2-autoconfigure实现的OAuth2迁移到更现代的解决方案,Spring Securi
    目录OAuth2资源服务器配置步骤1:添加依赖步骤2:配置资源服务器OAuth2客户端配置(可选)/**其他应用作为OAuth2客户端步骤1:添加依赖步骤2:配置OAuth2.0客户端/**应用同时作为OAuth2客户端步骤1:配置OAuth2.0客户端控制器示例结合使用OAuth2与JWT        ......
  • 【ai技术】(3):树莓派4,成功安装ollama软件,内存4G,推荐使用命令行界面安装,使用raspi-config
    1,关于raspberrypi4项目https://www.bilibili.com/video/BV1K2421P71h/【ai技术】(3):树莓派4,成功安装ollama软件,内存4G,安装命令行版本,使用raspi-config配置wifi,速度9t/s2,下载raspberrypi镜像项目地址:https://www.raspberrypi.com/software/operating-systems/#r......
  • 图形化配置和Kconfig基本语法
    参考资料:https://www.bilibili.com/video/BV12E411h71h?p=32&vd_source=432ba293ecfc949a4174ab91ccc526d6 ubuntu下安装ncurses库:sudoapt-getinstallbuild-essentialsudoapt-getinstalllibncurses5-dev.config文件保存着uboot的配置项,使用menuconfig配置完uboo......
  • C语言常用格式字符
    %d或%i  有符号十进制整数%u  无符号十进制整数%ld  有符号长整型%c  字符%s  字符的字符串%f  十进制浮点数//------------------------分隔符------------------------%o  有符号八进制%x  无符号十六进制整数//--------------------......
  • Nginx服务
    NGINX服务目录第一章·Nginx简介4·什么是nginx4·正向代理4·反向代理5·负载均衡5·动静分离6第二章·Nginx的安装7·yum方式安装7·源码包方式安装7·测试8第三章·Nginx常用命令9第四章·Nginx的配置文件11·全局块11·events块11·http块......
  • docker上安装上常用软件
    常用得几个安装为例:安装tomcatmysqlredis总体步骤如下:  一.安装tomcat 1.dockersearchtomcat命令search,获取取到dockerhub官网直接输入tomcat去查找也是一样得。2.dockerpulltomcat3.dockerimagestomcat4.dockerrun-it-ptomcat ......
  • [Kyana]常用命令与快捷键汇总
    01|快捷键mpv02|命令LinuxvimDockerportainerdockervolumecreateportainer_datadockerrun-d--nameportainer-p9000:9000-v/var/run/docker.sock:/var/run/docker.sock-vportainer_data:/data--restartalwaysportainer/portainermemosdockerrun-d--na......
  • 常用sql语法以及含义
    select*fromuserwheresubstr(user.no,1,4)!=‘2024’;substr(obj,start,length):obj指定是哪个字段;start:指定从第几位开始(注意不能为0);length表示长度。上述sql的意思是从第一个字符开始截取no字段,截取4位。添加字段,删除字段,修改字段类型alerttableuseraddusername......