背景: 假设您有一个具有这种架构的Web应用程序:前面有一个Node App Server(Koa)和一个Nginx Web Server。
场景: 客户端浏览器向服务器发出请求。它被nginx拾取并发送到应用服务器,应用服务器响应返回给nginx,nginx响应返回给客户端。
问题: 通过这种交互,每个请求和响应都有哪些协议?您是否配置它们,是http / 1还是1.1或2?是tcp / ip
浏览器请求:TCP / IP ??? Nginx请求:??? 应用服务器响应:??? Nginx请求:???
答案 0 :(得分:1)
应用服务器和nginx通过什么协议进行通信?
无论您配置了哪种协议。
假设您有一个具有以下架构的Web应用程序:前面有一个Node App Server(Koa)和一个Nginx Web Server。
您的Koa应用将使用HTTP。因此,Nginx和您的应用服务器之间使用HTTP。
浏览器请求:TCP / IP
HTTP始终通过TCP运行。浏览器将使用自身和服务器支持的HTTP版本。
您是否配置了它们,是http / 1还是1.1或2?
是的,您进行配置。虽然,Node.js不正确支持HTTP / 1.0。而且,HTTP / 2通常由您的网络服务器(在此示例中为Nginx)终止。因此,在Nginx和您的Node.js应用服务器之间使用HTTP / 1.1是典型的。显然,如果您进行更改,则可以更改。