当前位置: 首页 > news >正文

在Docker 上使用 Nginx 配置https及wss

预先创建挂载文件

/mydata/nginx/conf/nginx.conf 
/mydata/nginx/cert
/mydata/nginx/conf.d
/mydata/nginx/html
/mydata/nginx/logs

运行并且挂载容器

docker run -p 80:80 -p 443:443  --name nginx01 --restart=always \
-v /mydata/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /mydata/nginx/cert:/etc/nginx/cert \
-v /mydata/nginx/conf.d:/etc/nginx/conf.d \
-v /mydata/nginx/html:/usr/share/nginx/html \
-v /mydata/nginx/logs:/var/log/nginx \
-d -it nginx

nginx.conf文件

user  nginx;
worker_processes  auto;error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;events {worker_connections  1024;
}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;sendfile        on;#tcp_nopush     on;keepalive_timeout  65;#gzip  on;include /etc/nginx/conf.d/*.conf;
}

default.conf文件

server{listen 80;listen  [::]:80;charset 'utf-8';server_name  chat.frankzhang.space;rewrite ^(.*) https://$server_name$1 permanent;error_page  404 /404.html; location = /404.html{root  /usr/share/nginx/html;}
}server{listen 443 ssl;server_name 域名;ssl_certificate  ***.pem;ssl_certificate_key ***.key;ssl_session_cache    shared:SSL:1m;ssl_session_timeout  5m;ssl_protocols SSLv3 SSLv2 TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置ssl_ciphers  HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers  on;location / {#rewrite ^/(.*)$ /$1 break;proxy_pass http://服务器ip地址:端口号;        #通过配置端口指向部署websocker的项目proxy_http_version 1.1;    proxy_set_header Upgrade $http_upgrade;    proxy_set_header Connection "Upgrade";    proxy_set_header X-real-ip $remote_addr;proxy_set_header X-Forwarded-For $remote_addr;proxy_read_timeout 600s;			#设置连接自动断开时间}error_page  404 /404.html;             location = /404.html {root  /usr/share/nginx/html;}
}

相关文章:

在Docker 上使用 Nginx 配置https及wss

预先创建挂载文件 /mydata/nginx/conf/nginx.conf /mydata/nginx/cert /mydata/nginx/conf.d /mydata/nginx/html /mydata/nginx/logs运行并且挂载容器 docker run -p 80:80 -p 443:443 --name nginx01 --restartalways \ -v /mydata/nginx/conf/nginx.conf:/etc/nginx/ngi…...

git回退操作

1. 在工作区回退: 此时文件没有经过任何提交 git checkout -- filename2. git add之后回退 git reset HEAD3. git commit 之后回退 git reset --hard commit_id(前4位)其中,commit_id可通过git log查看,例如: qzcryqz MINGW6…...

C++系列-类和对象-静态成员

类和对象-静态成员 静态成员静态成员变量静态成员函数 静态成员 静态成员就是在成员变量或者是成员函数前面加上static关键字。 静态成员变量 所有对象共享同一份数据在编译阶段分配内存类内声明,类外初始化可以通过对象或者类名进行访问。静态成员变量也具有访问…...

SAP MM学习笔记26- SAP中 振替转记(转移过账)和 在库转送(库存转储)2- 品目Code振替转记 和 在库转送

SAP 中在库移动 不仅有入库(GR),出库(GI),也可以是单纯内部的转记或转送。 1,振替转记(转移过账) 2,在库转送(库存转储) 1&#xff…...

【Python机器学习】实验13 基于神经网络的回归-分类实验

文章目录 神经网络例1 基于神经网络的回归(简单例子)1.1 导入包1.2 构造数据集(随机构造的)1.3 构造训练集和测试集1.4 构建神经网络模型1.5 采用训练数据来训练神经网络模型 实验:基于神经网络的分类(鸢尾花数据集)1. 导入包2. 构造数据集3.…...

【数据结构】二叉树的链式结构的实现 -- 详解

一、前置说明 在学习二叉树的基本操作前,需先要创建一棵二叉树,然后才能学习其相关的基本操作。为了降低大家学习成本,此处手动快速创建一棵简单的二叉树,快速进入二叉树操作学习。 typedef char BTDataType;typedef struct Binar…...

【C语言】什么是结构体内存对齐?结构体的大小怎么计算?

目录 1.结构体内存对齐 对偏移量的理解:​ 2.结构体的大小计算 2.1结构体中只有普通的数据类型的大小计算 2.2 结构体中有嵌套的结构体的大小计算 3.修改默认对齐数 4.为什么存在内存对齐? 这篇文章主要介绍结构体内存对齐和如何计算大小。 在学习结构体内存…...

【Redis】Redis中的布隆过滤器

【Redis】Redis中的布隆过滤器 前言 在实际开发中,会遇到很多要判断一个元素是否在某个集合中的业务场景,类似于垃圾邮件的识别,恶意IP地址的访问,缓存穿透等情况。类似于缓存穿透这种情况,有许多的解决方法&#xf…...

接口测试 —— Jmeter 参数加密实现

Jmeter有两种方法可以实现算法加密 1、使用__digest自带函数 参数说明: Digest algorithm:算法摘要,可输入值:MD2、MD5、SHA-1、SHA-224、SHA-256、SHA-384、SHA-512 String to be hashed:要加密的数据 Salt to be…...

Linux c语言字节序

文章目录 一、简介二、大小端判断2.1 联合体2.2 指针2.3 网络字节序 一、简介 字节序(Byte Order)指的是在存储和表示多字节数据类型(如整数和浮点数)时,字节的排列顺序。常见的字节序有大端字节序(Big En…...

批量将excel中第5列中内容将人名和电话号码进行分列

使用Python可以使用openpyxl库来实现批量将Excel中第5列的内容分列为人名和电话号码的操作。下面是示例代码: import openpyxl def split_names_and_phone_numbers(file_path, sheet_name): # 加载Excel文件 workbook openpyxl.load_workbook(file_path) …...

WPF DataGrid columns表头根据数据集动态动态生成Demo

思路是这样的&#xff0c;数组集合装表头的信息&#xff0c;遍历这个集合&#xff0c;遍历过程中处理一下数据&#xff0c;然后就把每表头信息添加到dataGrid2.Columns.Add(templateColumn); 1&#xff0c;页面Xaml代码&#xff1a; <DataGrid x:Name"dataGrid" …...

1339. 分裂二叉树的最大乘积

链接&#xff1a; ​​​​​​1339. 分裂二叉树的最大乘积 题解&#xff1a; /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* …...

【C++】Stack和Queue

欢迎来到Cefler的博客&#x1f601; &#x1f54c;博客主页&#xff1a;那个传说中的man的主页 &#x1f3e0;个人专栏&#xff1a;题目解析 &#x1f30e;推荐文章&#xff1a;题目大解析3 目录 &#x1f449;&#x1f3fb;Stack Constructor&#x1f449;&#x1f3fb;Stack …...

Maven之tomcat7-maven-plugin 版本低的问题

tomcat7-maven-plugin 版本『低』的问题 相较于当前最新版的 tomcat 10 而言&#xff0c;tomcat7-maven-plugin 确实看起来很显老旧。但是&#xff0c;这个问题并不是问题&#xff0c;至少不是大问题。 原因 1&#xff1a;tomcat7-maven-plugin 仅用于我们&#xff08;程序员&…...

在项目中如何解除idea和Git的绑定

在项目中如何解除idea和Git的绑定 1、点击File--->Settings...(CtrlAltS)--->Version Control--->Directory Mappings--->点击取消Git的注册根路径&#xff1a; 2、回到idea界面就没有Git了&#xff1a; 3、给这个项目初始化 这样就可以重新绑定远程仓库了&#x…...

AGI 在网易云信的技术提效和业务创新

We believe our research will eventually lead to artificial general intelligence, a system that can solve human-level problems. Building safe and beneficial AGI is our mission. ---- OpenAI 通用人工智能 AGI 作为 AI 的终极形态&#xff0c;是 AI 行业内追求的演…...

线性代数的学习和整理9(草稿-----未完成)

3.3 特征值和特征向量是什么&#xff1f; 直接说现在&#xff1a;特征向量这个块往哪个方向进行了拉伸&#xff0c;各个方向拉伸了几倍。这也让人很容易理解为什么&#xff0c;行列式的值就是特征值的乘积。 特征向量也代表了一些良好的性质&#xff0c;即这些线在线性变换后…...

React的useReducer与Reudx对比

useReducer 和 Redux 都是用于处理应用程序的状态管理的工具&#xff0c;但它们在概念和使用场景上存在一些区别。 useReducer&#xff1a; useReducer 是 React 提供的一个 Hook&#xff0c;用于管理局部状态。它接受一个 reducer 函数和初始状态&#xff0c;并返回一个包含当…...

深度学习环境搭建 cuda、模型量化bitsandbytes安装教程 windows、linux

cuda、cudann、conda安装教程 输入以下命令&#xff0c;查看 GPU 支持的最高 CUDA 版本。 nvidia-smi cuda安装&#xff08;cudatoolkit&#xff09; 前往 Nvidia 的 CUDA 官网&#xff1a;CUDA Toolkit Archive | NVIDIA Developer CUDA Toolkit 11.8 Downloads | NVIDIA …...

PortProxyGUI:Windows端口转发图形化管理终极指南

PortProxyGUI&#xff1a;Windows端口转发图形化管理终极指南 【免费下载链接】PortProxyGUI A manager of netsh interface portproxy which is to evaluate TCP/IP port redirect on windows. 项目地址: https://gitcode.com/gh_mirrors/po/PortProxyGUI 在Windows网络…...

如何高效使用DdddOcr:免费开源的离线验证码识别终极指南

如何高效使用DdddOcr&#xff1a;免费开源的离线验证码识别终极指南 【免费下载链接】ddddocr 带带弟弟 通用验证码识别OCR pypi版 项目地址: https://gitcode.com/gh_mirrors/dd/ddddocr 在当今数字世界中&#xff0c;验证码识别已成为自动化测试、数据采集和网络安全测…...

5分钟掌握飞书文档高效转换:开源浏览器扩展的完整解决方案

5分钟掌握飞书文档高效转换&#xff1a;开源浏览器扩展的完整解决方案 【免费下载链接】cloud-document-converter Convert Lark Doc to Markdown 项目地址: https://gitcode.com/gh_mirrors/cl/cloud-document-converter 还在为飞书文档格式转换而头疼吗&#xff1f;复…...

从AlphaGo到你的小游戏:如何用MCTS(蒙特卡洛树搜索)为你的五子棋项目加个‘智能大脑’

从AlphaGo到你的小游戏&#xff1a;如何用MCTS为五子棋项目构建智能决策引擎 当你在手机上下棋输给AI时&#xff0c;是否好奇过这些"电子大脑"如何思考&#xff1f;2016年AlphaGo击败李世石的关键技术之一——蒙特卡洛树搜索&#xff08;MCTS&#xff09;&#xff0c…...

LaTeX排版避坑指南:为什么你的多图caption编号对不齐?一个案例讲清subfig、minipage和tabular的选择

LaTeX多图排版实战&#xff1a;从编号错乱到完美对齐的解决方案 第一次在学术论文中遇到多图排版问题时&#xff0c;我盯着那个歪歪扭扭的(c)编号看了整整十分钟——它本该和(a)(b)整齐排列&#xff0c;却像迷路的孩子一样缩在角落。更糟的是&#xff0c;当我引用这些子图时&am…...

机电一体化系统设计的核心挑战与跨学科协同

1. 机电一体化系统设计的核心挑战与机遇十年前我第一次参与工业机器人控制系统开发时&#xff0c;机械团队和电气团队还在用纸质图纸传递设计变更。某个周五下午的机械结构改动&#xff0c;直到下周一才通知到电气组&#xff0c;导致整个控制柜布局需要返工。这种割裂的开发模式…...

WPF动画避坑指南:Blend路径动画Canvas.Left与RenderTransform的实战选择(附性能对比)

WPF动画避坑指南&#xff1a;Blend路径动画Canvas.Left与RenderTransform的实战选择&#xff08;附性能对比&#xff09; 在WPF开发中&#xff0c;动画效果的实现往往让开发者陷入选择困境。特别是当我们需要让UI元素沿着复杂路径运动时&#xff0c;Canvas.Left/Top与RenderTra…...

大模型赛道岗位大揭秘:小白也能轻松入行的5大方向!

文章详细介绍了大模型相关岗位的五大类&#xff0c;包括基座模型岗&#xff08;理论派、工程派、能力派&#xff09;、应用算法岗、大模型开发/Agent工程师、AI Infra工程师以及大模型数据工程师。文章强调了应用算法岗更注重项目经验和工程能力&#xff0c;而大模型开发岗则涉…...

基于MCP协议的Kubernetes智能运维助手:lazymac-k-mcp项目详解

1. 项目概述&#xff1a;一个为Kubernetes而生的MCP服务器如果你和我一样&#xff0c;日常工作中有一大半时间都在和Kubernetes集群打交道&#xff0c;那么你肯定对kubectl命令行工具又爱又恨。爱的是它功能强大&#xff0c;是操作K8s的瑞士军刀&#xff1b;恨的是它命令繁多&a…...

InferenceX推理引擎:从架构解析到生产部署的完整指南

1. 项目概述&#xff1a;为什么我们需要一个全新的推理引擎&#xff1f;最近在折腾大模型部署和推理优化时&#xff0c;我总感觉现有的开源方案&#xff0c;比如 vLLM、TGI 或者 TensorRT-LLM&#xff0c;虽然功能强大&#xff0c;但总有些“隔靴搔痒”的感觉。要么是配置复杂&…...