几个常用协议的定义和推荐组织
Protocol preferred by binary protocol keep-alive
HTTP mongrel no yes
SCGI WSGI (python) not really no
FastCGI PHP, rails yes yes
AJP13 Tomcat yes yes yes
What is Mongrel?
Mongrel is a fast HTTP library and server for Ruby that is intended for hosting Ruby web applications of any kind using plain HTTP rather than FastCGI or SCGI. It is framework agnostic and already supports Ruby On Rails, Og+Nitro, Camping, and IOWA frameworks.
The Simple Common Gateway Interface (SCGI) is a protocol for applications to interface with HTTP servers, an alternative to the CGI protocol. It is similar to FastCGI but is designed to be easier to implement.
Request header的格式非常简单,如下
引用
headers ::= header*
header ::= name NUL value NUL
name ::= notnull+
value ::= notnull+
notnull ::= <01> | <02> | <03> | ... | <ff>
NUL = <00>
FastCGI is a protocol for interfacing interactive programs with a web server. FastCGI is a variation on the earlier Common Gateway Interface (CGI); FastCGI's main aim is to reduce the overhead associated with interfacing the web server and CGI programs, allowing a server to handle more web page requests at once.
The Apache JServe Protocol (AJP) is a binary protocol that can conduit inbound requests from a web server through to an application server that sits behind the web server. It also supports some monitoring in terms of the web server being able to ping the application server. AJP is typically used in a load balanced deployment where one or more front-end web servers feed requests into one or more application servers. Sessions are redirected to the correct application server using a routing mechanism wherein each application server instance gets a name which is called a route.
分享到:
相关推荐
1. **多协议支持**:Flup不仅支持FastCGI,还支持SCGI(Simple Common Gateway Interface)和AJP(Apache JServ Protocol)等协议,增强了与不同Web服务器的兼容性。 2. **异步模式**:Flup可以以异步方式运行,这...
4. **支持多种协议**:除了基础的FastCGI协议,Flup还支持SCGI(Simple Common Gateway Interface)和AJP(Apache JServ Protocol)协议,提供更多的部署选项。 要安装Flup,你可以使用Python的包管理器pip。首先...
kangle 是一个轻量级、高性能的 web 服务器。支持 fastcgi/isapi/ajp/uwsgi/scgi/hmux 协议。包括一个 http 管理控制台。 完全支持访问控制。 内存/磁盘缓存。 虚拟主机可以在单独的进程和用户中运行。 和更多
- **FastCGI/SCGI/AJP**:指导如何使用 FastCGI/SCGI/AJP 协议部署 Django。 - **Apache/mod_python (已弃用)**:提供关于使用 Apache/mod_python 部署 Django 的信息。 - **Apache 认证**:解释如何在 Apache 上...
- **部署**:包含WSGI服务器、FastCGI/SCGI/AJP、Apache认证、静态文件处理和邮件错误跟踪。 #### 8. 其他内置组件 - **管理站点**:强大的后台管理系统,支持各种操作。 - **管理动作**:对模型数据进行批量操作的...
--enable-proxy-scgi \ --enable-proxy-ajp \ --enable-proxy-balancer \ --enable-proxy-express \ --enable-session \ --enable-session-cookie \ --enable-ssl \ --enable-dav \ --enable-vhost-alias \...
5. **部署**:讨论了不同场景下的部署策略,如WSGI服务器、FastCGI/SCGI/AJP、Apache等。 #### 九、其他内置功能 除了上述核心组件外,Django还提供了一系列附加功能: 1. **管理站点**:用于创建和管理应用数据的...
- **FastCGI/SCGI/AJP**:使用这些协议部署项目。 - **Apache认证**:实现用户认证的方法。 - **处理静态文件**:如何处理项目中的CSS、JavaScript等静态文件。 - **通过电子邮件跟踪代码错误**:当程序出错时...
- **FastCGI/SCGI/AJP**:介绍这些协议的基本概念,尽管它们已被废弃。 - **部署静态文件**:说明如何正确地部署Django项目的静态文件。 - **通过email追踪代码错误**:指导如何配置Django来发送错误报告邮件。 ###...
- **FastCGI/SCGI/AJP**:虽然这些协议已被废弃,但仍有参考价值。 - **部署静态文件**:说明如何处理静态文件的部署。 - **通过email追踪代码错误**:提供错误追踪的方法。 #### 五、安全 - **安全概述**:提供...