1

在 Web 服务器和 Web 框架之间交换 HTTP 请求/响应的典型方式是什么?例如,如果您在 Rails 中有您的网站,但您使用的是 Apache 服务器。是通过命名管道、匿名管道、分叉进程并将请求放入参数向量、写入文件等吗?我正在编写一个以完整的 HTTP 请求开始的 Web 框架(而不是直接读取套接字),并且我想复制最常见框架在如何与 Web 服务器交互方面的行为。

4

2 回答 2

1

看看 AJP 协议: http ://en.wikipedia.org/wiki/Apache_JServ_Protocol

它最初的开发目的是让 Apache HTTP 服务器位于 Tomcat 应用程序服务器的前面,但协议中没有任何特定于 Java 的内容,因此您至少可以在实现中重用这些概念。

APJ 的一件非常好的事情是它可以正确处理虚拟主机。前端服务器将正确的信息传递给后端服务器,以便后者可以生成正确的内部超链接。

于 2013-06-04T07:46:31.867 回答
0

这是有关 Phusion Passenger(Rails 应用程序服务器)架构的技术文档

Phusion - 架构概述

于 2013-06-02T22:23:56.977 回答