有没有转发 HTTP 请求的轮子?

2017-09-04 13:06:27 +08:00
 userlol

唯一要求:只要是监听 80 端口,接收 HTTP 请求,然后转发给相应目的主机。

只要转发 HTTP 请求,HTTPS 支持都无所谓,也不需要向 FQ 工具那样 TCP 转发,希望是应用层转发就好,这样用起来也方便。
举例:比如在 10.0.1.123 的 hosts 中指定了 10.0.1.110 www.test.com, 随后收到来自 10.0.1.123 的请求,该 proxy 将 GET /index.htm HTTP/1.1 ...请求转发至真正主机 123.113.110.134 ,并将回复 HTTP 302 Found 发回 10.0.1.123
之自己写了个,单线程,效率低,有没有类似的轮子啊?谢谢各位

4263 次点击
所在节点    程序员
31 条回复
msg7086
2017-09-04 13:08:43 +08:00
为什么要回复 302 ?
pathletboy
2017-09-04 13:10:10 +08:00
nginx?
userlol
2017-09-04 13:10:31 +08:00
@msg7086 只是个例子,就是转发真正服务器原先的内容就可以,我改一下
msg7086
2017-09-04 13:11:22 +08:00
@userlol 只是转发的话 nginx 躺着就能做。
novaeye
2017-09-04 13:11:28 +08:00
各种反向代理工具都可以吧. 比如 haproxy, 比如 nginx, 又比如 caddy : https://caddyserver.com
msg7086
2017-09-04 13:13:01 +08:00
如果你用 Windows 的话,IIS 也应该可以做反代。
tinytin
2017-09-04 13:13:23 +08:00
nginx 最方便了
userlol
2017-09-04 13:14:43 +08:00
@msg7086
@novaeye
@pathletboy
先谢谢各位,之前我自己写的原因就是要修改 HTTP 请求里的内容(不是干坏事,自用),nginx 的话,这方面感觉太弱了。有开源轮子可以用吗?
userlol
2017-09-04 13:17:00 +08:00
为什么 4 分钟就不能编辑了呢,也不能 append
插一句,希望轮子能修改 http response,抱歉忘了提这个需求
jobtesting
2017-09-04 13:18:40 +08:00
fiddler 不行?
t1518968889
2017-09-04 13:19:10 +08:00
镜像?
zlfzy
2017-09-04 13:25:18 +08:00
@userlol 日 PV 千万 nginx 都毫无压力,你说个人用感觉很弱
msg7086
2017-09-04 13:26:54 +08:00
@userlol 有多弱?你要改什么? nginx 里带着一套 lua 引擎你试过么……
上面说的 fiddler 也是一个,能写脚本改请求的。

只是改 response 的话 nginx 里有替换字符串的功能。

无回复的时候可编辑,30 分钟还是多少分钟后可 append。
tradzero
2017-09-04 13:27:55 +08:00
nginx 反代太弱???
hellove1985
2017-09-04 13:35:29 +08:00
mitmproxy ?
fcka
2017-09-04 13:38:06 +08:00
openresty
Immortal
2017-09-04 13:43:20 +08:00
openresty+1
msg7086
2017-09-04 14:40:01 +08:00
你还是 nginx 吧,自己写模块也行,lua 脚本处理 response 也行。

https 代理原生支持,当然你要获取 response 必须要先解密再改数据再重新加密。
whileFalse
2017-09-04 15:23:03 +08:00
拿 go 裸写,50 行要不了
nullcc
2017-09-04 16:39:58 +08:00
openresty 可以有

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/388006

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX