在Web服务器和Web框架之间交换HTTP请求/响应的典型方式是什么?例如。如果您的网站在Rails中,但您使用的是Apache Server。是通过命名管道,匿名管道,分支进程并将请求放入参数向量,写入文件等?我正在编写一个以完全形成的HTTP请求开头的Web框架(而不是直接读取套接字),我想复制最常见框架在与Web服务器交互方式中的行为。
答案 0 :(得分:1)
看看AJP协议: http://en.wikipedia.org/wiki/Apache_JServ_Protocol
最初开发它是为了使Apache HTTP服务器位于Tomcat应用程序服务器之前,但协议中没有特定于Java的内容,因此您至少可以重用实现的概念。
APJ的一个非常好的事情是它正确处理虚拟主机。前端服务器将正确的信息传递给后端服务器,以便后者可以生成正确的内部超链接。
答案 1 :(得分:0)
以下是有关Phusion Passenger(Rails应用程序服务器)架构的技术文档