使用nginx代理实现 https、wss的代理,对于nginx版本自行寻找对应的版本,有x86和arm的版本,但是配置文件是通用的,config目录下的nginx.conf

下面是简单对此conf文件的配置说明

1.有三个server服务代理,第一个是https的代理,第二个是wss的代理

2.第三个是wss的流式配置,适用于音频流等流式文件

3.代理https和wss是要有证书文件的,证书文件是由openssl生成的.crt和.key文件,这个自行下载openssl生成密钥

user  root;
worker_processes 1; error_log /opt/nginx/logs/error.log; pid /opt/nginx/logs/nginx.pid; events {
worker_connections 102400;
use epoll;
multi_accept on;
} http { client_max_body_size 1024m;
sendfile on;
tcp_nopush on;
keepalive_requests 100;
keepalive_timeout 65;
underscores_in_headers on;
proxy_headers_hash_max_size 51200;
proxy_headers_hash_bucket_size 6400;
include mime.types;
default_type application/json;
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 off; server {
server_name ip ; # 本机ip
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme; proxy_connect_timeout 5s;
listen 28081 ssl;
location /favicon.ico {
log_not_found off;
access_log off;
} ssl_certificate /opt/ssl/mycrt.crt;#证书文件路径
ssl_certificate_key /opt/ssl/private.key;#证书文件 location / {
root /opt/html;
index index.html index.htm;
try_files $uri $uri/ @router; proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme; }
location @router{
rewrite ^.*S /index.html last;
} location /ds-aaa-web{
proxy_pass http://ip:14600/ds-aaa-web/;
}
location /ds-bbb-app/{
proxy_pass http://ip:12801/ds-bbb-app/;
} error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
} map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}

server {
listen 10003 ssl;
server_name localhost;
ssl_certificate /opt/ssl/mycrt.crt;
ssl_certificate_key /opt/ssl/private.key;
ssl_session_timeout 20m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_verify_client off; location / {
proxy_http_version 1.1;
proxy_pass http://ip:10002;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_read_timeout 3600s;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
}   #ws流式配置
server {
listen 10004 ssl;
server_name localhost;
ssl_certificate /opt/ssl/mycrt.crt;
ssl_certificate_key /opt/ssl/private.key;
ssl_session_timeout 20m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_verify_client off; location / {
proxy_http_version 1.1;
proxy_pass http://ip:12802;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_read_timeout 3600s;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;        
      
proxy_buffering off;        #禁用响应缓存
       chunked_transfer_encoding on;
       tcp_nopush on;
       tcp_nodelay on;
       keepalive_timeout 300;
       client_max_body_size 200m;
       client_body_buffer_size 800m; }
} }

  

nginx代理https、wss配置、wss流式配置的更多相关文章

  1. nginx代理https站点(亲测)

    nginx代理https站点(亲测) 首先,我相信大家已经搞定了nginx正常代理http站点的方法,下面重点介绍代理https站点的配置方法,以及注意事项,因为目前大部分站点有转换https的需要所 ...

  2. nginx 代理 https 后,应用变成 http

    需求:nginx 代理 https,后面的 tomcat 处理 http 请求,sso 的客户端,重定向时需要带上 target,而这个 target 默认是 tomcat 的 http,现在需要把这 ...

  3. nginx 代理https后,应用redirect https变成http --转

    原文地址:http://blog.sina.com.cn/s/blog_56d8ea900101hlhv.html 情况说明nginx配置https,tomcat正常http接受nginx转发.ngi ...

  4. 搬运 nginx代理https

    oauth2-client在Nginx代理后遇到的问题和解决方案  2020-01-17 2020-05-27  TECH 30 MINUTES READ (ABOUT 4442 WORDS) OAu ...

  5. 开启Nginx代理HTTPS功能

    1.首先查看是否已经安装SSL openssl version -a 2.生成SSL证书 在nginx目录下创建ssl文件夹 cd /etc/pki mkdir nginx cd nginx 生成20 ...

  6. 关于配置websocket,nginx转发https至wss问题

    在本地测试通过的socket,再放到现在的有nginx代理之后发现会报:failed: Error in connection establishment: net::ERR_NAME_NOT_RES ...

  7. react-router 组件式配置与对象式配置小区别

    1. react-router 对象式配置 和 组件式配置    组件式配置(Redirect) ----对应---- 对象式配置(onEnter钩子) IndexRedirect -----对应-- ...

  8. Nginx或Apache通过反向代理配置wss服务

    nginx配置参考 前提条件及准备工作: 1.假设ws服务监听的是8282端口(websocket协议) 2.已经申请了证书(pem/crt文件及key文件)放在了/etc/nginx/conf.d/ ...

  9. Openssl自签证书|Nginx配置全站HTTPS,包括WSS(websocket)

    一.生成自签证书 如果有购买证书的,可忽略此步骤. 生成方法一: openssl genrsa -des3 -out ca.key 1024 openssl rsa -in ca.key -out c ...

  10. 实现Nginx代理WSS协议

    因为线上H5游戏需要加上SSL,不想在原来的Web 服务器和游戏服务器支持SSL,只希望 在Nginx代理集群支持SSL.整体架构如下: 从上图可以看出需要总共涉及到https/http 和wss/w ...

随机推荐

  1. 自制一个超级简单的 php 发邮件的轮子 simpleMailTool.php

    simpleMailTool 程序链接 https://github.com/kohunglee/simpleMailTool/ 一个简单的 php 发邮件的轮子,跟其他著名大轮子相比(如 PHPMa ...

  2. How to grow old

    An individual human existence should be like a river-small at first,narrowly contained within its ba ...

  3. StringBuilder原理及StringBuffer

    1.StringBuilder的原理 StringBuilder是用来干什么的?为什么我们要学习StringBuilder?字符串拼接明明String也可以实现 答:StringBuilder可以大幅 ...

  4. 【QT】使用Qxlsx读取Excel单元格中函数表达式的结果值

    [QT]使用Qxlsx读取Excel单元格中函数表达式的结果值 零.起因 是这样的,目前朋友托我写一款模板生成软件,任务是先把他写的程序文件复制一份出来,然后再根据Excel中对应位置的单元格的值,修 ...

  5. 【ESP32】移植 Arduino 库到 idf 项目中

    今天咱们要聊的内容非常简单,所以先扯点别的.上一篇水文中,老周没能将 TinyUSB 的源码编译进 Arduino 中,心有两百万个不甘,于是清明节的时候再试了一次,居然成功了,已经在 esp32 开 ...

  6. AIR780E引脚复用笔记

    1.应用场景:   使用AIR780E模块驱动TM1637数码管驱动芯片,原有方案是AIR724UG+TM1637.为了降低成本,按照官方方案进行代码迁移.   伴随着代码迁移,硬件引脚也需要做相应调 ...

  7. 详细介绍Mybatis的缓存机制

    一.缓存机制 1.缓存概述 缓存:缓存就是一块内存空间,保存临时数据 作用:将数据源(数据库或者文件)中的数据读取出来存放到缓存中,再次获取时直接从缓存中获取,可以减少和数据库交互的次数,提升程序的性 ...

  8. [VulnHub]DC-1靶场全过程

    DC-1 借鉴我们OnePanda-Sec团队的文章 https://mp.weixin.qq.com/s/BbPkmDiZ-cRleiCqmj114w 靶场搭建 先导入DC-1靶场,并将连接改为NA ...

  9. crypto14解题思路

    crypto14解题思路 ##二进制 001100110011001100100000001101000011010100100000001101010011000000100000001100100 ...

  10. Fastjson命令执行漏洞复现2(fastjson <=1.2.47)

    一.搭建环境: 第一种:Docker一键拉取环境 htttps://github.com/vulhub/vulhub/tree/master/fastjson/1.2.47-rce 第二种:tomac ...