反向代理和网络服务器有啥区别?
Posted
技术标签:
【中文标题】反向代理和网络服务器有啥区别?【英文标题】:What is the difference between reverse proxy and web server?反向代理和网络服务器有什么区别? 【发布时间】:2019-05-16 18:00:13 【问题描述】:我在What is the difference between application server and web server? 阅读了一篇关于应用服务器与网络服务器的精彩帖子。此外,Difference between proxy server and reverse proxy server 很好地解释了代理服务器是什么。
我还了解到一些 Web 服务器,例如 Apache,内置了反向代理。 (Source)。此外,*** (https://en.wikipedia.org/wiki/Reverse_proxy) 有一张图片,将网络服务器和反向代理显示为单独的实体。
来源:https://en.wikipedia.org/wiki/Reverse_proxy(图片最初来自加拿大隐私,现为 CC0,license info)
所以,我不确定网络服务器和反向代理之间的区别。有人可以解释一下吗?
【问题讨论】:
【参考方案1】:Web 服务器侦听 HTTP 请求并通过发回 HTTP 响应对其做出反应。
反向代理是一个 Web 服务器,它通过实现 HTTP 客户端来确定做出什么响应。
客户端 A 向反向代理发出 HTTP 请求。反向代理向服务器 B 发出 HTTP 请求。服务器 B 向反向代理发送 HTTP 响应。反向代理将该数据作为其 HTTP 响应发送到客户端 A。
【讨论】:
@昆汀-谢谢你的帮助。我很迷惑。您能否详细说明两点:a)webserver listens for HTTP requests and responds by HTTP response
b)web server also implements HTTP client.
如果您能提供诸如(我假设...请原谅我的无知)client --> reverse proxy --> webserver --> app server --> Database
之类的流程,那就太好了。非常感谢您的想法。
client --> reverse proxy which is a webserver --> other webserver --> wherever
再次感谢昆汀。您能否详细说明reverse proxy which is a webserver
和other webserver
之间的区别。我了解其中一个差异与 reverse proxy server
作为客户的行为有关。还存在哪些其他差异?我很好奇。
@watchtower — 没有任何其他差异以上是关于反向代理和网络服务器有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章