我应该在Apache下选择哪种FastCGI服务器模式?

Mar*_*cus 4 apache perl cgi fastcgi mod-fastcgi

我是FastCGI的新手,并希望使用这个平台来加速我现有的vanilla CGI(perl)程序.

但是在阅读FastCGI/Apache FAQ时,似乎我可以在Apache配置中设置我的脚本(一旦转换为使用单独的初始化/请求部分),如下所示:

1)动态

2)静态"在SetHandler的范围内"

3)静态"在AddHandler的范围内"

4)静态"在Set/AddHandler范围之外"(或者,我认为,这可以称为'外部')

我对这四个选项感到困惑,我假设"动态"的默认值是我应该使用的,但有人可以解释这些的优点/缺点吗?

ziy*_*iya 5

Add/SetHandlers没有太多担心.它们只是定义哪些扩展名被识别为fcgi脚本的一种方式.

您可能需要考虑的是动态,静态或外部.

  1. 静态在apache启动时启动(这可能是最常见的设置)
  2. 每当发出第一个请求时都会启动动态(这是默认设置)
  3. 外部要求fcgi服务器与apache分开运行.(这是最先进的移民)

我建议您参考模块文档以获取更多信息(至少摘要):

mod_fastcgi下的FastCGI应用程序被定义为三种类型之一:静态,动态或外部.它们分别使用FastCgiServer,FastCgiConfig和FastCgiExternalServer指令进行配置.Apache标识为FastCGI应用程序且未使用FastCgiServer或FastCgiExternalServer指令显式配置的任何URI都作为动态应用程序处理(有关详细信息,请参阅FastCgiConfig指令).

FastCGI静态和动态应用程序由FastCGI流程管理器fcgi-pm生成和管理.Apache在服务器初始化时生成进程管理器.假定外部应用程序是独立启动和管理的.

当然,如果您使用Perl,您可以尝试使用mod_perl,您可以先使用CGI脚本开始.