美文网首页
nginx http https共用同一个端口

nginx http https共用同一个端口

作者: 叶迎宪 | 来源:发表于2023-03-08 11:15 被阅读0次

nginx大于1.15.2版本

stream {
    upstream http {
        server localhost:8000;
    }

    upstream https {
        server localhost:8001;
    }

    map $ssl_preread_protocol $upstream {
        default https;
        "" http;
    }

    server {
        listen 8080;
        listen [::]:8080;
        proxy_pass $upstream;
        ssl_preread on;
    }
}

server {
    listen 8000;
    listen [::]:8000;
    listen 8001 ssl;
    listen [::]:8001 ssl;
...

关键设置 ssl_preread on。有了这个设置之后,可以使用map指令,通过 $ssl_preread_protocol 判断不同的ssl协议进行分发

参考 https://serverfault.com/questions/47876/handling-http-and-https-requests-using-a-single-port-with-nginx
http://nginx.org/en/docs/stream/ngx_stream_ssl_preread_module.html

相关文章

  • Nginx与Trojan共用443

    Nginx与Trojan共用443端口 这个部分主要是摘自Trojan 共用 443 端口方案。首先是为什么Ngi...

  • nginx端口转发

    我们常用的端口有 80/443 端口80端口对应着HTTP,443端口对应着HTTPS配置好 nginx 之后,可...

  • socket.io

    文档 https://socket.io/docs/ websocket是可以和http共用监听端口的,也就是它可...

  • 服务器配置小功能

    当nginx同时配置了http和https,需要优先访问https时,在80端口配置处加:

  • [nginx] 通过nginx反向代理给网站添加 https 证

    通过nginx反向代理给网站添加 https 证书。正常网站监听端口 8088 http 申请证书: https...

  • docker配置nginx

    拉取nginx镜像 创建文件夹 启动 映射端口443,用于https请求 映射端口80,用于http请求; ngi...

  • ssl证书(http升级https)

    http默认端口80,https默认端口号443 一、购买证书 二、安装证书 重启Nginx,这时候你的站点应该就...

  • nginx 80端口重定向到443端口

    nginx 80端口重定向到443端口,也就是http访问自动跳转到https配置如下:一、按照如下格式修改ngi...

  • 防止开发人员随意篡改nginx测试服务端口

    背景:测试环境为共用环境,开发在测试自己的分支时,喜欢直接修改Nginx配置,把端口改为自己分支环境的服务端口 解...

  • HTTP

    HTTP和HTTPS HTTP的端口号为80, HTTPS的端口号为443 HTTPS比HTTP更安全,但性能更低...

网友评论

      本文标题:nginx http https共用同一个端口

      本文链接:https://www.haomeiwen.com/subject/eiwsldtx.html