【后端】Nginx+lua+OpenResty高性能实践

news2024/11/26 2:54:23

文章目录

  • 9. HTTPS安全认证
    • 9.1 证书
    • 9.2 证书获取方式
    • 9.3 自签证书-openssl工具
    • 9.4 Nginx配置HTTPS
  • 10. websocket转发配置
  • 100.常遇的问题
    • 100.1 host

【后端&网络&大数据&数据库目录贴】

9. HTTPS安全认证

http协议问题:

  • 明文传输,有被第三方截取到数据信息的风险 (加密处
    理)
  • 对于数据完整性:篡改数据(校验码)
  • 身份验证:无法确认发送者身份(密钥对)

9.1 证书

证书可以对身份进行验证,密钥对存在漏洞,黑客可以伪装
为发送者,生成密钥对,发送给接受者。
引入第三方证书,证书通过加密算法对内容进行加密,并且
证书可以明确的记录证书颁发机构的信息,证书使用者的相
关信息,从而接受者接收到证书,对证书信息通过公钥进行
验证,能够识别真实的发布者身份。

9.2 证书获取方式

  1. 通过官方机构购买证书
  2. 通过证书签发工具,自签证书。

9.3 自签证书-openssl工具

还有cfssl工具等等

  • SSL数据传输原理
    在这里插入图片描述
  • Openssl自签发证书

证书包含的内容:

  • 一对密钥对
  • 颁发者和使用者信息
  • 证书的相关信息
  • Openssl命令应用

yum install openssl -y
-in filename 指定要加密的文件的路径
-out filename 指定加密后的文件的存放位置
-salt 自动插入一个随机数到文件中
-e 指定加密算法
-d 解密算法

  • 自签发证书

openssl genrsa -out private.pem #生成私钥
openssl rsa -in private.pem -pubout -out key.pem # 根据生成对应公钥
req -new -x509 -key private.pem -out ca.crt -days 36500 # 生成自签证书
(common name随便写即可)
在这里插入图片描述

9.4 Nginx配置HTTPS

server {
        listen 81 ssl;
        server_name localhost;
        ssl_certificate /usr/local/https/ca.crt;
        ssl_certificate_key /usr/local/https/private.pem;


        location / {
            root   html;
            index  index.html index.htm;
        }
    }
  • 可以将http转化成https的输入,自动跳转
server {
        listen 443 ssl;
        server_name localhost;
        ssl_certificate /usr/local/https/ca.crt;
        ssl_certificate_key /usr/local/https/private.pem;  
      

        location / {
            root   html;
            index  index.html index.htm;
        }
    }
    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            #root   html;
            #index  index.html index.htm;
            rewrite (.*) https://114.115.185.179/$uri redirect;
        }
   }     

10. websocket转发配置

server {
    listen 80;
    server_name example.com;  # 你的域名
 
    location /ws/ {
        proxy_pass http://websocket_backend;  # websocket_backend 是你的 WebSocket 服务器的 upstream 名称
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
类似于 HTTP 转发,websocket_backend 应该是一个 upstream 指令定义的服务器组。
上面的配置中proxy_set_header Upgrade $http_upgrade 和 proxy_set_header Connection "upgrade" 
是 WebSocket 协议升级所需的标头。

100.常遇的问题

100.1 host

在 Nginx 中,当使用 proxy_pass 指令将请求转发到上游服务器时,默认情况下Host 头部字段的值会被设置为 proxy_pass 指令中指定的上游服务器的地址(通常是上游服务器的域名或 IP 地址和端口)。这是为了防止上游服务器无法识别原始请求的 Host 头部字段值。

然而,如果你希望保持原始请求的 Host 头部字段值不变,你可以使用 proxy_set_header 指令来明确设置 Host 头部字段的值。通常,你会这样做来保持原始请求的 Host 值:

location / {  
    proxy_pass http://your_upstream;  
    proxy_set_header Host $host;  
    # 其他可能的设置...  
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1875468.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【redis】Redis AOF

1、AOF的基本概念 AOF持久化方式是通过保存Redis所执行的写命令来记录数据库状态的。AOF以日志的形式来记录每个写操作(增量保存),将Redis执行过的所有写指令记录下来(读操作不记录)。AOF文件是一个只追加的文件&…

文心一言4.0免费使用

领取&安装链接:Baidu Comate 领取季卡 有图有真相 原理:百度comate使用文心一言最新的4.0模型。百度comate目前免费使用,可以借助comate达到免费使用4.0模型目的。 如何获得 点击「Baidu Comate 领取季卡 -> 领取权益」&#xff0…

分享一个自学AI的文档-通往AGI之路

通往AGI之路-自学神器 这是是一个有关AI知识的开源文档。 但是,我认为这是小白学习AI的最强王者,每一个想学习AI、想使用AI的人都可以把它设为首页,从它开始。 飞书文档:通往AGI之路 通往AGI之路是由一群热爱A|的专家和爱好者…

[数据库]索引机制

目录 索引机制 索引的类型 索引使用 哪些适合添加索引 ​编辑 索引机制 当没有索引的时候, 如下示例,在找到id等于1的时候, 仍然会往下继续查找, 进行全表扫描, 因为它认为下面也有可能还会有1 加上索引之后进行二叉树查找, 找到1之后, 发现1的左边没有了, 右边也没有了就停…

我关于Excel使用点滴的笔记

本篇笔记是我关于Excel使用点滴的学习笔记,摘要和地址链接列表。临时暂挂,后面可能在不需要时删除。 (笔记模板由python脚本于2024年06月28日 12:23:32创建,本篇笔记适合初通Python,熟悉六大基本数据(str字符串、int整型、float浮…

GPT-5 一年半后发布,对此你有何期待?

IT之家6月22日消息,在美国达特茅斯工程学院周四公布的采访中,OpenAI首席技术官米拉穆拉蒂被问及GPT-5是否会在明年发布,给出了肯定答案并表示将在一年半后发布。此外,穆拉蒂在采访中还把GPT-4到GPT-5的飞跃描述为高中生到博士生的…

find()方法——字符串首次出现的索引位置

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 语法参考 find()方法实现查询一个字符串在其本身字符串对象中首次出现的索引位置,如起始位置从11到结束位置17之间子字符串出现的位置&a…

使用Endnote中英文等的实现和GB7714格式

Endnote是一款被广泛使用的文献管理软件,其是SCI(Thomson Scientific 公司)的官方软件,支持国际期刊的参考文献格式有3776 种【也可以自定义期刊引用格式】。 软件非常方便科研狗进行文献整理,写笔记,做备…

深度学习经典检测方法概述

一、深度学习经典检测方法 two-stage(两阶段):Faster-rcnn Mask-Rcnn系列 one-stage(单阶段):YOLO系列 1. one-stage 最核心的优势:速度非常快,适合做实时检测任务! 但是…

Spring简单学习

Spring简单学习 spring中的设计模式工厂模式简单工厂模式工厂方法模式 Springmvc简单学习MVC模式Spring MVC 常用组件Spring MVC 工作流程 [Spring IOC](https://juejin.cn/post/6983957368115560485#heading-3)IOC是什么使用IOCSpring提供的IOC容器Spring的IOC实现原理**Root …

第4章_USB 设备编程

文章目录 4.1 USB 学习指南4.1 USB 学习指南 4.2 USB 系统硬件框架和软件框架4.2.1 实验现象4.2.2 硬件框架4.2.3 软件框架 4.3 软件工程师眼里的 USB 电气信号4.3.1 USB 设备状态切换图4.3.2 硬件线路4.3.3 电子信号4.3.4 低速/全速信号电平4.3.5 高速信号电平4.3.6 设备连接与…

【报错记录】第一次安装VUE启动失败sh: vite: command not found

大家好,我是DX3906 🌈 欢迎莅临我的个人主页 👈这里是我静心耕耘大前端领域、真诚分享知识与智慧的小天地!🎇 问题描述:第一次使用npm create vuelatest搭建vue3.0脚手架的时候,运行npm run dev…

【数据结构(邓俊辉)学习笔记】二叉搜索树03——平衡

文章目录 1. 极端退化2. 平均高度3. 理想 适度4. 歧义 等价5. 等价变换 1. 极端退化 二叉搜索树为我们同时实现对数据集高效的静态操作以及动态操作打开了一扇新的大门。 正如我们所看到的,从策略上,BST可以视作是试图将此前的向量结构以及列表结构优…

【EI会议】2024年机械、计算机工程与材料国际会议 (MCEM 2024)

2024年机械、计算机工程与材料国际会议 (MCEM 2024) 2024 International Conference on Mechanical, Computer Engineering and Materials 【重要信息】 大会地点:广州 官网地址:http://www.ismcem.com 投稿邮箱:ismcemsub-conf.com 【注意…

云计算【第一阶段(20)】磁盘管理与文件系统 服务器硬件及RAID配置实战(三)

一、服务器硬件详解 cpu 主板 内存 硬盘 网卡 电源 raid卡 风扇 远程管理卡 1.1、硬盘尺寸 目前生产环境中主流的两种类型硬盘 3.5寸 和2.5寸硬盘 2.5寸硬盘可以通过使用硬盘托架后适用于3.5寸硬盘的服务器 但是3.5寸没法转换成2.5寸 二、RAID阵列详解 独立硬盘冗余阵…

CSF视频文件格式转换WMV格式

如果大家看过一些高校教学讲解视频的话,很可能见过这样一个难得的格式,".csf ",非常漂亮 。 用暴风影音都可以打开观看,会自动下载解码。 但是一旦我们想要利用或者上传视频的时候就麻烦了,一般网站不认这…

计算机毕业设计Python+Spark知识图谱微博预警系统 微博推荐系统 微博可视化 微博数据分析 微博大数据 微博爬虫 微博预测系统 大数据毕业设计

课题名称 基于Bert模型对微博的言论情感分析设计与实现 课题来源 课题类型 BY 指导教师 学生姓名 专 业 计算机科学与技术 学 号 开题报告内容:(调研资料的准备,设计/论文的目的、要求、思路与预期成果;…

Matplotlib绘制并列的条形图:每个类别有多个条形并排显示

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推…

2-19 基于matlab的薄板弯曲的算例

基于matlab的薄板弯曲的算例,利用有限元方法编制matlab程序。对二维薄板进行单元化,输出薄板结构参数及载荷,输出弯曲情况,并可视化展示。程序已调通,可直接运行。 2-19 薄板弯曲 有限元方法 薄板结构参数 - 小红书 (x…

好用的导航网站有哪些

网址导航网站是我们日常上网的一个重要工具。它们不仅可以帮助我们快速找到所需的资源和信息,还能提高我们的工作效率。以下是小编收藏的几个好用的导航网站,涵盖了办公、学习、娱乐等多个领域,分享给大家。 1. 办公人导航 办公人导航是一个…