🥉别再死磕 Nginx!http-proxy-middleware 低配置起飞

别再死磕 Nginx!http-proxy-middleware 低配置起飞
type
Post
status
Published
date
Jan 12, 2026
slug
summary
tags
开发
category
技术分享
icon
password
Place
大家好,我是凌览。
如果本文能给你提供启发或帮助,欢迎动动小手指,一键三连(点赞评论转发),给我一些支持和鼓励谢谢。

前言

已有一个去水印下载鸭后端服务,域名配置、服务器端口均已配置稳定。
现在我另有一个后端服务,假设取名叫去水印下载鸭后端服务Pro。
现在需要去水印下载鸭后端服务、去水印下载鸭后端服务Pro部署在同一台服务器,并且两者都通过80、443公开端口对外访问。这时大多选择Nginx反向代理让去水印下载鸭后端服务、去水印下载鸭后端服务Pro共用一个门牌号,流量自动分流,证书复用。
对于并发量大的后台选择Nginx没毛病,但对流量小到连“并发”俩字都嫌重,再搬出 Nginx 就是拿青龙偃月刀切葱花——刀好,但真没必要。
Node 玩家直接 http-proxy-middleware 一把梭,省出配 nginx 的功夫,早把需求迭代上线了。
本文就来介绍怎样用 http-proxy-middleware 三分钟搭好反向代理,让“去水印下载鸭”与“Pro 版”同吃 80/443,零 Nginx、低配置。

http-proxy-middleware是什么

http-proxy-middleware是一个基于 Express.js 框架的中间件,它能够将一个或多个 HTTP 请求代理到另一个服务器上。常用场景如:前端开发遇到跨域问题时,通过配置http-proxy-middleware,可以将前端请求代理到后端服务器,从而巧妙地避开浏览器的跨域限制。

安装与基础使用

首先安装http-proxy-middleware:
安装完成后,我们就可以在项目中引入并使用它了。以下是一个简单的 Express 应用中使用http-proxy-middleware代理请求的示例:

运用到实际项目

去水印下载鸭后端服务跑在 3000,在生产环境中会占住公网 80;去水印下载鸭后端服务Pro躲在 3010,只对内敞开。现在把 http-proxy-middleware 直接塞进3000去水印下载鸭后端服务,只加一条路由规则:
接口一旦撞上 /api/gold-price/*/**,当场被悄悄转给3010端口服务。
在middleware目录创建proxyGoldPrice.js 文件,Express中间件配置放置在一起.
notion image
proxyGoldPrice.js内容:
在上述代码中,我们通过createProxyMiddleware函数创建了一个代理中间件。当应用接收到以/api/gold-price开头的请求时,它会自动将该请求转发到http://127.0.0.1:3010。
举个例子:
访问http://127.0.0.1:3000/api/gold-price/realtime时,命中app.use('/api/gold-price', proxyGoldPrice)路由,http-proxy-middleware会把http://127.0.0.1:3000/api/gold-price/realtime转发到http://127.0.0.1:3010/realtime
上述例子中转发后的访问的是http://127.0.0.1:3010/realtime,但在去水印下载鸭后端服务Pro路由前缀都有/api/gold-price,所以会出错没找到对应路由。
pathRewrite则是解决些问题的配置,它用于路径重写:
表示把/替换成/api/gold-price/。转发后路径就是http://127.0.0.1:3010/api/gold-price/realtime。该字段可配可不配,取决于你的目标服务器。
好了,http-proxy-middleware基础使用方法介绍完毕。有不同代理需求功能可以移步看它的官方文档。

工具对比

来个简单对比:
特性
http-proxy-middleware
http-proxy
nginx
配置复杂度
中等
Node.js 集成
优秀
优秀
需要单独进程
开发便利性
优秀
良好
一般
性能
良好
优秀
优秀
WebSocket 支持
路径重写
有限
适用场景
轻量网关、Node 栈一体化
底层库、自定义代理逻辑
高并发、多语言、企业级网关
http-proxy-middleware是http-proxy二次封装,本质是一个东西。http-proxy-middleware的存在让http-proxy更易使用。

最后

通过在 Node.js 应用中集成 http-proxy-middleware 中间件,只需几行代码配置就能让多个后端服务共用 80/443 端口,实现请求分流和路由转发。相比 Nginx,这种方案配置简单、与 Node.js 深度集成、开发便利性高,特别适合流量不大的项目快速部署,避免"杀鸡用牛刀"的资源浪费。
 
上一篇
去水印下载鸭二开、私有化部署教程
下一篇
2026年1月编程语言排行榜|C#拿下年度语言,Python稳居第一
Loading...