基于 H5 的网页代理是如何实现的呢?

54 天前
 playboy0
  1. 高校很多都采用了一种基于浏览器的网页代理( webvpn ),这种方式似乎是许多年前过墙的方式,这种方式是如何处理页面中大量静态资源的?
  2. 这种工作方式下,webvpn 是算反向代理还是正向代理呢?
  3. 想不明白 nginx 这些做反向代理好像是工作在应用层,如何处理静态资源的?

谢谢大家。

1233 次点击
所在节点    问与答
8 条回复
totoro625
54 天前
可以参考一下这个项目: https://github.com/netptop/siteproxy
Vitumoc
54 天前
@totoro625 代码都是混淆的,还是没看懂是怎么实现的。
oneisall8955
54 天前
@Vitumoc 未混淆之前看过源码,核心是代理+响应体替换
DIO
54 天前
相关好用的项目有推荐吗
totoro625
54 天前
Vitumoc
54 天前
看了一下,可以回答题主了:
学校用的,这个帖子有讨论
Vitumoc
54 天前
看了一会,可以回答题主了:

学校用的,这个帖子有讨论,结论就是技术上是反向代理,然后有成熟的供应商

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



至于这个项目 https://github.com/netptop/siteproxy 这种代理方式,自述中有原理:

1. user browser url: https://siteproxy.herokuapp.com/https/www.google.com
2. siteproxy.herokuapp.com received the url and request www.google.com, and get response from www.google.com
3. siteproxy replace all returned strings in javascript/html:
https://www.google.com => https://siteproxy.herokuapp.com/https/www.google.com
url(/xxx) => url(/https/www.google.com/xxx)
https://xxx => https://siteproxy.herokuapp.com/https/xxx
etc.
4. send back the modified html/javascript to user browser.
playboy0
53 天前
@Vitumoc #7 🙏谢谢兄弟

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

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

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

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

© 2021 V2EX