通俗易懂的 Nginx 反向代理 配置
通俗易懂的 Nginx 反向代理 配置
首先 root 与 alias 的区别
- root 是直接拼接 root + location
location /i/ {root /data/w3;
}
当请求 /i/top.gif ,/data/w3/i/top.gif 会被返回。
- alias 是用 alias 替换 location
location /i/ {alias /data/w3/images/;
}
当请求 /i/top.gif ,/data/w3/images/top.gif 会被返回
Nginx 反向代理 解决跨域
假设页面地址:http://192.168.31.115:8080
假设请求接口地址:http://v.juhe.cn/laohuangli/d?date=2014-09-09&key=dae46b9a6abb27fecaace80f47624f
配置Nginx
server {listen 8088;server_name 192.168.31.115;location / {proxy_pass http://192.168.31.115:8080/; //反向代理}location /laohuangli {proxy_pass http://v.juhe.cn/laohuangli;}
}
将页面地址代理到8088端口,将接口地址也代理到8088端口
页面中请求接口
fetch('http://192.168.31.115:8088/laohuangli/d?date=2014-09-09&key=dae46b9a6abb27fecaace80f47624f').then(res=>res.json()).then(res=>{console.log(res)})
访问页面:http://192.168.31.115:8088/
-
server 块
整个配置被包裹在一个 server 块内,这意味着以下所有配置都是针对这个特定的服务器实例的。 -
listen 8088;
作用:指定 Nginx 监听的端口号为 8088。
说明:当客户端访问服务器的 192.168.31.115 地址时,需要通过端口 8088 来访问这个服务。例如,访问 http://192.168.31.115:8088。 -
server_name 192.168.31.115;
作用:定义服务器的名称为 192.168.31.115。
说明:server_name 用于区分不同的虚拟主机。当请求的 Host 头部与这里指定的 server_name 匹配时,Nginx 会使用这个服务器块来处理请求。




反向代理的优势
- **安全性:**后端服务器的详细信息对客户端隐藏,提升了安全性。
- **负载均衡:**可以将请求分发到多台后端服务器,提升处理能力。
- **缓存:**Nginx可以缓存后端服务器的响应,减少后端负载,提高响应速度。
- 统一入口:所有请求通过 Nginx 进行管理,便于统一配置
SSL、压缩、限流等功能。
相关文章:
通俗易懂的 Nginx 反向代理 配置
通俗易懂的 Nginx 反向代理 配置 首先 root 与 alias 的区别 root 是直接拼接 root location location /i/ {root /data/w3; }当请求 /i/top.gif ,/data/w3/i/top.gif 会被返回。 alias 是用 alias 替换 location location /i/ {alias /data/w3/images/; }当请…...
docker设置容器自动启动
说起开机自动启动应该很多人都遇到过,我们公司做的系统很多的中间件都没有设置开机自动启动然后中间修改问题又设置了一些临时生效的文件,开始的时候大家都不以为意,知道公司陆续有人离职入职管理交接一塌糊涂,项目成了历史遗留问…...
蓝桥杯刷题——day1
蓝桥杯刷题——day1 题目一题干题目解析代码 题目二题干题目解析代码 题目一 题干 给定一个字符串 s ,验证 s 是否是 回文串 ,只考虑字母和数字字符,可以忽略字母的大小写。本题中,将空字符串定义为有效的 回文串 。 题目链接&a…...
Leetcode 面试150题 399.除法求值
系列博客目录 文章目录 系列博客目录题目思路代码 题目 链接 思路 广度优先搜索 我们可以将整个问题建模成一张图:给定图中的一些点(点即变量),以及某些边的权值(权值即两个变量的比值),试…...
活动预告 |【Part2】Microsoft 安全在线技术公开课:安全性、合规性和身份基础知识
课程介绍 通过参加“Microsoft 安全在线技术公开课:安全性、合规性和身份基础知识”活动提升你的技能。在本次免费的介绍性活动中,你将获得所需的安全技能和培训,以创造影响力并利用机会推动职业发展。你将了解安全性、合规性和身份的基础知…...
Unity游戏实战
很小的时候在键盘机上玩过一个游戏叫寻秦,最近看有大佬把他的安卓版做出来了,打开封面就是Unity,想自己也尝试一下。...
SQL中的替换函数replace() 使用
这条 SQL 语句的作用是将 tool_tool 表中所有 link 字段包含 https://www.xxspvip.cn 的记录中的 https://www.xxspvip.cn 替换为 http://192.168.1.1。具体解释如下: SQL 语句分解 UPDATE tool_toolSET link REPLACE(link, https://www.xxspvip.cn, http://192.…...
Python面试常见问题及答案5
一、基础语法相关 问题1: Python的可变数据类型和不可变数据类型有哪些? 答案: 在Python中,可变数据类型有列表(list)、字典(dict)、集合(set)。这些数据类型…...
(css)element中el-select下拉框整体样式修改
(css)element中el-select下拉框整体样式修改 重点代码(颜色可行修改) // 修改input默认值颜色 兼容其它主流浏览器 /deep/ input::-webkit-input-placeholder {color: rgba(255, 255, 255, 0.50); } /deep/ input::-moz-input-placeholder {color: rgba…...
点击按钮打开dialog嵌套表格checked数据关闭dialog回显checked数据
介绍:点击按钮打开dialog嵌套表格,勾选数据,点击确认关闭弹窗并且回显选中得数据,回显的数据被删除,dialog里面的数据也被取消勾选,废话不多说 上代码!!! 这里的勾选回显…...
《拉依达的嵌入式\驱动面试宝典》—C/CPP基础篇(三)
《拉依达的嵌入式\驱动面试宝典》—C/CPP基础篇(三) 你好,我是拉依达。 感谢所有阅读关注我的同学支持,目前博客累计阅读 27w,关注1.5w人。其中博客《最全Linux驱动开发全流程详细解析(持续更新)-CSDN博客》已经是 Linux驱动 相关内容搜索的推荐首位,感谢大家支持。 《拉…...
大模型呼出机器人有哪些优势和劣势?
大模型呼出机器人有哪些优势和劣势? 原作者:开源呼叫中心FreeIPCC,其Github:https://github.com/lihaiya/freeipcc 大模型呼出机器人在实际应用中展现出了一系列优势和劣势,以下是对其优势和劣势的详细分析ÿ…...
Python鼠标轨迹算法(游戏防检测)
一.简介 鼠标轨迹算法是一种模拟人类鼠标操作的程序,它能够模拟出自然而真实的鼠标移动路径。 鼠标轨迹算法的底层实现采用C/C语言,原因在于C/C提供了高性能的执行能力和直接访问操作系统底层资源的能力。 鼠标轨迹算法具有以下优势: 模拟…...
安宝特分享 | AR技术助力医院总院与分院间的远程面诊
随着科技的迅猛发展,增强现实(AR)技术在各行各业的应用愈发广泛,特别是在医疗领域,其潜力和价值正在被不断挖掘。在现代医疗环境中,患者常常面临“看病难、看病远、看病急”等诸多挑战,而安宝特…...
css中的字体单位
绝对长度单位 这些单位表示固定的物理尺寸,不会根据其他因素变化。 cm:厘米mm:毫米in:英寸(1in 96px 2.54cm)px:像素(最常用的绝对单位,在屏幕上的表现取决于设备的分…...
如何使用程序查询域名whois信息?(带PHP/C#示例)
直接使用TCP协议向WHOIS服务器的43端口发送查询请求即可返回WHOIS信息。 一些国际域名(.COM/.NET/.CC等)需要继续向各注册商的WHOIS服务服务发送查询请求来获取详细信息。 大部分New gTLD来说,服务器是“whois.nic.[后缀]”,例如.red的WHOIS服务器为whoi…...
在C#中编程绘制和移动线段
这个示例允许用户绘制和移动线段。它允许您根据鼠标下方的内容执行三种不同的操作。 当鼠标位于某个线段上时,光标会变成手的形状。然后您可以单击并拖动来移动该线段。当鼠标位于线段的终点上时,光标会变成箭头。然后您可以单击并拖动以移动终点。当鼠…...
web自动化测试框架playwright
一、背景:UI自动化的痛点: 1、设计脚本耗时: 需要思考要如何模拟用户的操作,如何触发页面的事件,还要思考如何设计脚本,定位和操作要交互的元素、路径、位置,再编写代码逻辑,往复循…...
【报错记录】Ubuntu22.04解决开机卡在 /dev/sda5 : clean , *files , *blocks
一个愿意伫立在巨人肩膀上的农民...... 一、错误现象 本人的电脑安装Windows10和Ubuntu22.04双系统,一次训练中电脑死机无法开机,重启之后便出现如下错误,在网上寻找过很多方法均无效,在root下禁用了samba服务,也无济…...
【AIGC】如何高效使用ChatGPT挖掘AI最大潜能?26个Prompt提问秘诀帮你提升300%效率的!
还记得第一次使用ChatGPT时,那种既兴奋又困惑的心情吗?我是从一个对AI一知半解的普通用户,逐步成长为现在的“ChatGPT大神”。这一过程并非一蹴而就,而是通过不断的探索和实践,掌握了一系列高效使用的技巧。今天&#…...
终极指南:Redoc安全最佳实践,全面保护你的API文档
终极指南:Redoc安全最佳实践,全面保护你的API文档 【免费下载链接】redoc 📘 OpenAPI/Swagger-generated API Reference Documentation 项目地址: https://gitcode.com/gh_mirrors/re/redoc Redoc是一款强大的OpenAPI/Swagger生成API参…...
工业冷水机控制程序西门子1200plc含压缩机,电子膨胀阀控制策略,饱和温度计算公式
工业冷水机控制程序西门子1200plc含压缩机,电子膨胀阀控制策略,饱和温度计算公式凌晨三点钟的冷水机组房,设备轰鸣声中闪烁着PLC运行指示灯。手指划过TP1200触摸屏的瞬间,压缩机启动电流曲线在屏幕上划出漂亮的爬坡轨迹——这就是…...
Vue2项目里用Cesium加载天地图标注,保姆级避坑指南(含Token申请)
Vue2项目集成Cesium与天地图标注的工程化实践指南 当WebGIS需求遇上Vue技术栈,如何在老项目中优雅地引入三维地图能力?本文将以工程化视角,系统讲解Vue2项目中集成Cesium加载天地图标注的完整技术路径。不同于基础教程,我们将重点…...
杰理之关机DAC未进入高阻【篇】
memset(JL_ADDA, 0x0, sizeof(JL_ADDA_TypeDef)); SFR(JL_ADDA->DAA_CON2, 15, 1, 1); SFR(JL_ADDA->DAA_CON2, 5, 1, 1);...
基于vue的高校学生党员发展管理系统[vue]-计算机毕业设计源码+LW文档
摘要:本文旨在设计并实现一个基于Vue框架的高校教师教学质量评价系统。该系统充分利用Vue的组件化、响应式等特性,结合后端技术构建一个高效、易用、交互性强的评价平台。系统涵盖系统用户管理、学生评价管理、教师自评管理以及统计分析管理等多个功能模…...
为什么28S与18S rRNA比值可用于评估RNA质量?
在分子生物学实验中,获得高质量RNA样本是基因表达分析、转录组测序等研究成功的关键前提。在众多RNA质量评估方法中,28S与18S核糖体RNA的比值长期被广泛用作实验室中的“黄金标准”。这一标准为何如此受重视?其背后有着明确的原理与判断依据。…...
流图与地平线图
1. 流图:数据的河流如果把传统的堆叠面积图想象成一块块整齐堆叠的积木,那么流图就像一条蜿蜒流淌的河流,河道的宽窄变化自然流畅,波峰波谷过渡平滑。它特别适合展示多个类别数据随时间的变化趋势,尤其是当你想强调整体…...
嵌入式开发语言选择:C与C++的实战对比
1. 嵌入式开发语言选择的核心考量在嵌入式系统开发领域,C和C的争论已经持续了数十年。作为一名在工业控制和消费电子领域工作多年的嵌入式工程师,我见证了从8位单片机到多核处理器的演进过程。选择开发语言绝非简单的技术偏好问题,而是需要综…...
[论文分享] ICLR 2026 Oral GEPA:反思性提示词演化可以超越强化学习
摘要 大型语言模型(LLMs)正越来越多地通过强化学习(RL)方法(如群体相对策略优化 GRPO)来适应下游任务,而这类方法通常需要数千次尝试(rollouts)才能学习新任务。我们认为…...
Git從入門到「入坑」:一個新手的環境配置與踩坑實錄
Git從入門到「入坑」:一個新手的環境配置與踩坑實錄 ——AtomGit春季徵稿開源入門實戰分享 導語:為什麼我要寫這篇文章? 三個月前,我連git clone和git pull的區別都說不清楚。每次看到Git報錯,我的第一反應不是讀錯誤信…...
