nginx配置反向代理服务器,实现在https网站中请求http资源

article/2025/6/25 21:34:25

文章目录

  • 一、前言
  • 二、Nginx反向代理的工作原理
  • 三、Nginx反向代理的主要功能‌
  • 四、Nginx反向代理的配置和使用场景
  • 五、实战配置
    • 5.1 首先,修改宝塔面板配置
    • 5.2 接着配置代理服务器
    • 5.3 完成上面所有配置后
    • 5.4最后还要在原来的index.html文件里添加
    • 5.5 或者可以操作服务端的话,也可以在nginx配置里添加


一、前言

‌Nginx反向代理‌是一种将客户端请求转发到后端服务器的技术,主要用于负载均衡、提高安全性和提升性能。与正向代理不同,反向代理隐藏了后端服务器的真实地址,客户端与之交互时只知道反向代理服务器的地址。‌

在这里插入图片描述


二、Nginx反向代理的工作原理

当客户端发送请求到反向代理服务器时,Nginx 会接收这些请求,并根据配置将请求转发到后端的真实服务器上。Nginx 可以将多个请求分发到多个后端服务器,从而实现负载均衡,提高系统的并发处理能力和可用性。常见的负载均衡算法有轮询、IP 哈希、最少连接等。

三、Nginx反向代理的主要功能‌

  • 负载均衡‌Nginx 可以通过反向代理实现负载均衡,将请求分发到多个后端服务器上,从而提高系统的并发处理能力和可用性。
  • 缓存加速‌Nginx 可以缓存静态资源或动态页面,减少后端服务器的负载,提高响应速度。通过设置缓存时间、缓存规则等参数,可以灵活地控制缓存策略。‌
  • SSL终端‌Nginx 可以作为 SSL 终端,接收 HTTPS 请求并进行 SSL/TLS 解密,然后将解密后的请求转发给后端服务器,减轻后端服务器的负担,提高安全性和性能。‌
  • 安全过滤‌Nginx 可以通过反向代理实现安全过滤功能,例如防止恶意请求、DDoS 攻击、SQL 注入等。通过配置访问控制规则、限制请求频率等方式,可以提高系统的安全性。

四、Nginx反向代理的配置和使用场景

Nginx 的反向代理功能通过配置文件进行配置,配置文件包含了全局配置、http配置和 server 配置等部分,可以设置监听端口、代理规则、缓存配置、负载均衡策略等。Nginx 具有高性能的特点,采用异步非阻塞的事件驱动模型,可以处理大量并发连接,同时内存消耗较低,适合在资源有限的环境中使用。

五、实战配置

网站使用 nginx 作为服务器,协议从 http 升级为 https 的注意事项。

5.1 首先,修改宝塔面板配置

选择配置文件,http 请求重定向为 https 。所有 80 端口请求都重定向为 https请求。

# server代表的是nginx其中的一个服务器
server
{listen 80; # listen表示监听端口号80 (http)listen 443 ssl http2; # 表示监听443 端口号(https)server_name www.abc.com abc.com ip地址; # server_name表示服务器名称,现在同时匹配3个index index.php index.html index.htm default.php default.htm default.html; # 匹配/www/wwwroot/abc/index.htmlroot /www/wwwroot/abc; # abc表示路径,网站的起始位置为/www/wwwroot/abc#HTTP_TO_HTTPS_STARTif ($server_port !~ 443){ # 端口号不等于443,则重写url到https://当前主机/后面所有路径,并永久重定向(permanent)rewrite ^(/.*)$ https://$host$1 permanent;}

5.2 接着配置代理服务器

# 代理serve图片服务器apilocation /api/ {# 通过代理,访问https://ip|域名/api/...时,代理到http://你的ip或域名:3004/api/...proxy_pass http://你的ip或域名:3004; # 注意`http://你的ip或域名:3004`末尾不添加`/`,这样的话`/api/`将会添加到3004后面proxy_redirect  off;proxy_set_header  Host  $host;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;}# 代理音乐服务器api# /musicapi/,必须加上后面的/,不然代理服务不成功location /musicapi/ {# 访问https://你的ip或域名/musicapi/...,# 代理到http://你的ip或域名:3005/...,不包括/musicapiproxy_pass http://你的ip或域名:3005/; # 这里末尾添加了`/`,将不会添加`/musicapi/`在端口号后面proxy_redirect  off;proxy_set_header  Host  $host;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;}

5.3 完成上面所有配置后

http 网站升级到 https 网站,浏览器可正常访问网站,网站请求的 api 接口,需要从 http://ip| 域名 :3005/lyric?id=32507038 修改为 http(s)://ip|域名/musicapi/lyric?id=32507038 。这里的流程就是,把原本请求的 :3005/musicapi 替换掉,然后浏览器发出并重定向成 https 开头的请求,接着 nginx 发现你的请求中带有 /musicapi ,就把你的请求转发给匹配上的 http:// 你的ip 或域名 :3005/ 服务器。

5.4最后还要在原来的index.html文件里添加

# 把http链接升级为https
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests" />

5.5 或者可以操作服务端的话,也可以在nginx配置里添加

server
{listen 80;listen 443 ssl http2;......#升级可以升级为https的连接,兼容httpadd_header Content-Security-Policy "upgrade-insecure-requests;connect-src *"; 
}

http://www.hkcw.cn/article/PgRWINEnRk.shtml

相关文章

鲲鹏服务器+昇腾卡(Atlas 300I pro)搭建DeepSeek-R1-Distill-Qwen-7B(自己存档详细版)

参考文章&#xff1a;https://modelers.cn/models?namedeepseek&page1&size16 https://www.hiascend.com/software/modelzoo/models/detail/11aa2a48479d4d229a9830b8e41fc011 当前服务器配置为&#xff1a;2 * 鲲鹏920 2 * Atlas 300I pro 系统&#xff1a;open Eul…

Tongweb7049M4有关SSL/TLS 服务器瞬时 Diffie-Hellman 公共密钥过弱的处理方案(by lqw)

前提条件&#xff1a;Tongweb7049M4已在http通道里配置了https&#xff08;如何配置https可以参考这个帖子&#xff1a;东方通TongWEB添加Https证书&#xff0c;开启SSL&#xff09; 遇到客户在配置了https后&#xff0c;扫描漏洞提示&#xff1a; 有关SSL/TLS 服务器瞬时 Dif…

[原因和较为完美的解决方法]远程主机可能不符合 glibc 和 libstdc++ Vs code 服务器的先决条件

省流&#xff1a;把vscode降低到1.98版本并关闭自动更新 今天打开vscode&#xff0c;突然发现连接不了本地的虚拟主机ubuntu了&#xff0c;并且报了本文标题所示的错误。 vscode的具体报错如下&#xff1a; 原因是&#xff1a;&#xff08;从别人的文章摘过来的&#xff09; 通…

金蝶K3服务器安装与配置方法详细图解手册

金蝶K3服务器安装与配置方法详细图解手册 【下载地址】金蝶K3服务器安装与配置方法详细图解手册 本开源项目提供了一份详尽的《金蝶K3服务器安装与配置方法》图文教程&#xff0c;帮助用户轻松掌握金蝶K3系统的安装与配置。教程涵盖了服务器硬件配置、K3中间件、客户端以及数据…

物理服务器紧急救援:CentOS系统密码重置全流程实战指南

前言 在企业IT运维实践中&#xff0c;物理服务器密码丢失是典型的"低概率高风险"事件。某金融科技公司曾因核心服务器密码遗失导致业务中断36小时&#xff0c;直接损失超过800万元。这起真实案例揭示了系统密码管理的关键性——当承载重要业务的物理服务器遭遇密码丢…

arm内核架构服务器本地离线安装nginx服务

一、下载nginx安装包 nginx下载地址&#xff1a;https://nginx.org/en/download.html 二、解压并编译nginx应用 &#xff08;1&#xff09;解压安装包 首先将第一步下载的安装包上传到服务器上&#xff0c;然后执行以下指令&#xff1a; sudo tar -zxvf nginx-1.26.3.tar.gz…

华为RH2288服务器LSISAS2308SAS阵列卡Windows驱动安装指南:快速上手与稳定运行

华为RH2288服务器LSISAS2308SAS阵列卡Windows驱动安装指南&#xff1a;快速上手与稳定运行 【下载地址】华为RH2288服务器LSISAS2308SAS阵列卡Windows驱动安装指南 本开源项目为华为RH2288服务器用户提供了LSISAS2308 SAS阵列卡在Windows系统下的驱动程序及详细安装指南。通过清…

银河麒麟服务器操作系统V10 系统升级操作

原系统版本&#xff1a; Kylin-Server-10-SP1-Release-Build04-20200711-x86_64.iso 更新系统版本&#xff1a; Kylin-Server-V10-SP3-General-Release-2212-X86_64.iso 备注&#xff1a;在系统升级前&#xff0c;如系统有数据的&#xff0c;请务必做好数据备份&#xff01; 1…

【AI非常道】二零二五年四月,AI非常道

经常在社区看到一些非常有启发或者有收获的话语&#xff0c;但是&#xff0c;往往看过就成为过眼云烟&#xff0c;有时再想去找又找不到。索性&#xff0c;今年开始&#xff0c;看到好的言语&#xff0c;就记录下来&#xff0c;一月一发布&#xff0c;亦供大家参考。 前面的记…

胖东来红内裤案当事人道歉 承认未核实质量问题

5月30日,段某通过其短视频账号“两个小段(小)”发布视频向胖东来道歉,这标志着胖东来“红内裤”事件告一段落。次日,许昌生活广场的胖东来门店内,富妮来的内衣产品仍在销售,但没有该品牌的红内裤。5月28日,河南许昌市魏都区人民法院公开审理了胖东来与段某之间的名誉权…

美15岁女孩练车误踩油门致父亲身亡 悲剧震惊社区

近日,美国洛杉矶一名15岁少女在练车时发生意外,导致指导她学车的父亲当场身亡,她自己也受了伤。据警方透露,5月26日下午接到报案称当地发生了一起车祸。初步调查显示,当时这名少女正在超市上层停车场练车,她的64岁父亲坐在副驾驶座上指导。不幸的是,少女误踩油门,车辆失…

网络犯罪分子利用虚假ChatGPT安装程序实施攻击

网络安全研究人员发现&#xff0c;攻击者正利用OpenAI ChatGPT和InVideo AI等流行人工智能(AI)工具的虚假安装程序作为诱饵&#xff0c;传播包括CyberLock和Lucky_Gh0$t勒索软件家族以及名为Numero的新型恶意软件在内的多种威胁。 恶意软件技术分析 思科Talos研究员Chetan Ra…

vmware虚拟机在物理机重启的情况下经常上不去网的情况处理

vmware虚拟机在物理机重启的情况下经常上不去网的情况处理 现状&#xff1a;物理机 winserver 2019 vmware 15.5 虚拟机是linux 7.2 和 winserver 2019 现象&#xff1a;物理机能正常上网&#xff0c;两个虚拟机不能上网&#xff0c;ping不通任何ip &#xff08;每次重…

学习LINUX第3天

今日任务&#xff1a; 基本文件属性、文件与目录管理、用户和用户组管理 [rootlocalhost ~]# 分别代表&#xff1a; 1、用户名&#xff1a;root 2、主机名&#xff1a;localhost 3、当前路径&#xff1a;~当前用户的home目录 4、权限源标志位&#xff1a; #代表root&#x…

JavaScript实现备忘录的增删改操作

最终实现目标效果&#xff1a; ​添加任务​&#xff1a;用户输入内容后点击“add”&#xff0c;创建包含任务和操作按钮的新行。每个任务分配唯一index标识&#xff08;通过flag自增实现&#xff09;。标记完成/未完成​&#xff1a;点击“mark”切换任务文本的中划线样式和颜…

从认识AI开始-----卷积神经网络(CNN)

前言 在上一篇文章里&#xff0c;我们手写了多层感知机&#xff0c;细心地小伙伴们可能会发现一个问题&#xff0c;对于MLP&#xff0c;有两个突出的问题&#xff0c;尤其是处理图像任务时&#xff1a; 参数太多&#xff1a;例如一个28*28的图像扁平化为784维后&#xff0c;连…

从“固定“到“流动“:移动充电如何重塑用户体验?

在传统充电模式中&#xff0c;"固定"不仅是技术的特征&#xff0c;更成为用户行为的枷锁——人们需要规划行程、寻找插座、等待电量填满&#xff0c;这种被动适配正在被移动充电技术颠覆。当充电设备从墙面解放&#xff0c;化身可携带的能源胶囊&#xff0c;甚至嵌入…

π0基于自己的数据集微调,convert_libero_data_to_lerobot.py 各种报错的解决方法

π0 github地址 在做&#xff1a;π0基于自己的数据集微调 Fine-Tuning Base Models on Your Own Data 的时候遇到各种报错&#xff0c;记录一下。 推荐教程&#xff1a;π0的微调——如何基于各种开源数据集、以及私有数据集微调通用VLA π0(含我司七月的微调实践及在机械臂上…

在哈佛演讲25岁中国女生发声 签证不确定性影响未来规划

5月30日,哈佛大学毕业典礼上,中国学生蒋雨融身穿中国传统服饰发表了一段动情演讲。25岁的蒋雨融来自中国青岛,获得了哈佛大学国际发展方向的公共行政硕士学位。她提到,特朗普政府威胁遣返学生签证持有者,这给她的未来规划带来了极大的不确定性。蒋雨融表示自己也开始考虑去…

半导体B2B分销中台如何与ERP集成

在半导体B2B分销领域&#xff0c;高效的销售链管理和精准的数据流转是企业竞争力的核心。随着市场需求的快速变化和业务规模的持续扩张&#xff0c;传统的人工下单销售模式已难以满足实时协同、动态定价、库存优化等关键需求。如何将半导体B2B分销中台与企业核心ERP系统深度集成…