用户手册
Version 1.9 — Rev. 3

# LSAPI应用

### 名称

#### 描述

此外部应用程序的唯一名称。 在配置的其他部分中使用该名称时，将使用该名称进行引用。

#### 语法

文本

### 地址

#### 描述

外部应用程序使用的唯一套接字地址。 支持IPv4/IPv6套接字和Unix域套接字（UDS）。 IPv4/IPv6套接字可用于网络通信。 只有当外部应用程序与服务器在同一台机器上时，才能使用UDS。

#### 语法

IPv4或IPv6地址:端口，或者UDS://path

#### 示例

127.0.0.1:5434
UDS://tmp/lshttpd/php.sock.

#### 提示

[安全] 如果外部应用程序在同一台机器上运行，则首选UDS。如果必须使用IPv4/IPv6， 将IP地址设置为localhost或127.0.0.1，这样外部应用就无法从其他机器上访问。 [性能建议] Unix域套接字一般比IPv4套接字拥有更高的性能。

### 最大连接数

#### 描述

指定服务器与外部应用之间可建立的最大并发连接数。该设置控制外部应用程序可同时处理多少个请求。 然而，真正的限制还取决于外部应用本身。如果外部的速度不够快，或者无法处理大量的并发请求，那么将这个值设置得更高也无济于事。

#### 语法

非负整数

#### 提示

[性能建议] 设置一个高值并不能直接变成高性能。设置为一个不会使外部应用程序过载的值，将提供最佳的性能/吞吐量。

### 环境

#### 描述

为外部应用程序指定额外的环境变量。

#### 语法

Key=value。多个变量可以用回车换行分隔。

### 初次请求超时时间 (secs)

#### 描述

指定服务器等待外部应用响应新建立连接上的第一个请求的最大时间（秒）。 如果服务器在这个限制时间内没有收到外部应用的任何数据，它将把这个连接标记为坏(Bad)。这有助于识别与外部应用程序的通信问题。 这有助于尽快发现与外部应用的通信问题。如果某些请求的处理时间较长，则增加这个限制以避免503错误信息。

#### 语法

秒数整数

### 重试超时（秒）

#### 描述

指定服务器在重试之前，等待出现通信问题的外部应用程序的时间。

#### 语法

秒数整数

### 持久连接

#### 描述

指定处理完请求后是否保持连接。持久连接可以提高性能， 但某些FastCGI外部应用程序并不完全支持持久连接。默认值为“On”。

#### 语法

布尔值

### 持久连接超时时间

#### 描述

指定空闲持久连接保持打开的最大时间（秒）。
设置为-1时，连接永不超时。设置为0或更大时，连接会在经过该秒数后关闭。

#### 语法

秒数整数

### 响应缓冲

#### 描述

指定是否缓冲从外部应用程序收到的响应。 如果检测到“nph-”（Non-Parsed-Header）脚本，则会关闭带完整HTTP头响应的缓冲。

#### 语法

从下拉列表选择

### 由服务器启动

#### 描述

指定是否要由Web服务器自动启动应用程序。只有运行在同一台机器上的FastCGI和LSAPI应用程序才能自动启动。 地址中的IP必须是本地IP。通过LiteSpeed CGI守护进程而不是主服务器进程启动，有助于减少系统开销。
默认值：Yes (Through CGI Daemon)

#### 语法

从下拉列表选择

### 命令

#### 描述

指定执行外部应用程序的完整命令行，包括参数。 启用由服务器启动时，此项为必填。如果参数中包含空格或制表符，应使用双引号或单引号括起该参数。

#### 语法

可执行文件的完整路径，可带可选参数。

#### 另请参阅

由服务器启动

### 待处理队列

#### 描述

指定监听套接字的待处理队列长度。启用由服务器启动时需要设置。

#### 语法

非负整数

### 实例数

#### 描述

指定服务器创建的外部应用程序最大实例数。启用由服务器启动时，此项为必填。 大多数FastCGI/LSAPI应用程序每个进程实例只能处理一个请求。对于这类应用，实例数应与最大连接数的值匹配。 有些FastCGI/LSAPI应用程序可以生成多个子进程来同时处理多个请求。对于这类应用，应将实例数设置为1，并使用环境变量控制应用可生成的子进程数量。

#### 语法

非负整数

### 运行用户

#### 描述

外部应用程序将以此处指定的用户名运行。如果未设置，将继承虚拟主机级别的设置。
默认值：未设置

#### 语法

有效的用户名。

#### 另请参阅

extGroup

### 以特定组运行

#### 描述

外部应用程序将以此处指定的组名运行。如果未设置，将继承虚拟主机级别的设置。
默认值：未设置

#### 语法

有效的组名。

#### 另请参阅

extUser

### umask

#### 描述

设置此外部应用程序进程的默认umask。详情请参阅 man 2 umask 。默认值取自服务器级别的umask设置。

#### 语法

有效范围为[000]-[777]的值。

#### 另请参阅

CGI umask

### 开机自启

#### 描述

指定是否在服务器启动时启动外部应用程序。 只适用于可以管理自己子进程的外部应用程序，并且实例数值设置为"1"。
如果启用，将在服务器启动时而不是运行时创建外部进程。
选择“Yes (Detached mode)”时，可以通过分别触碰$SERVER_ROOT/admin/tmp/或$VH_ROOT/目录下的 '.lsphp_restart.txt'文件，在服务器级别或虚拟主机级别重新启动所有分离模式进程。
默认值：Yes (Detached mode)

#### 语法

布尔值

#### 提示

[性能] 如果配置的外部进程有很大的启动开销（例如Rails），应启用此选项以减少首页响应时间。

### 最大空闲时间

#### 描述

指定服务器停止外部应用之前的最大空闲时间，以释放空闲资源。 当设置为-1时，服务器不会停止外部应用，除非它在ProcessGroup模式下运行； 在ProcessGroup模式下，空闲的外部应用会在30秒后停止。
默认值为: -1

#### 语法

整数

#### 提示

[性能] 此功能在大规模托管环境中特别有用。为了避免一个虚拟主机拥有的文件被另一个虚拟主机的外部应用脚本访问，通常会同时以SetUID模式运行许多不同的应用。将该值设置得较低，可以避免这些外部应用不必要地长时间空闲。

### 优先级

#### 描述

指定外部应用的优先级，值的范围是-20到20。 数值越小表示优先级越高。外部应用进程的优先级不能高于Web服务器。 如果该优先级设置一个比服务器的优先级小的数字，则将使用服务器的优先级。

#### 语法

整数

#### 另请参阅

Server 优先级

### 内存软限制 (bytes)

#### 描述

以字节为单位指定服务器启动的外部应用进程或程序的内存占用限制。
此限制的目的主要是为了防范软件缺陷或蓄意攻击造成的过度内存使用， 而不是限制正常使用。确保留有足够的内存，否则您的应用程序可能故障并 返回503错误。限制可以在服务器级别或独立的外部应用程序级别设置。如 果未在独立的外部应用程序级别设定限制，将使用服务器级别的限制。
如果在两个级别都没有设置该限制，或者限制值设为0，将使用操 作系统的默认设置。

#### 语法

非负整数

#### 提示

[注意] 不要过度调整这个限制。如果您的应用程序需要更多的内存， 这可能会导致503错误。

### 内存硬限制 (bytes)

#### 描述

与内存软限制 (bytes)非常相同，但是在一个用户进程中，软限制 可以被放宽到硬限制的数值。硬限制可以在服务器级别或独立的外部应用程序级别设 置。如果未在独立的外部应用程序级别设定限制，将使用服务器级别的限制。
如果在两个级别都没有设置该限制，或者限制值设为0，将使用操 作系统的默认设置。

#### 语法

非负整数

#### 提示

[注意] 不要过度调整这个限制。如果您的应用程序需要更多的内存， 这可能会导致503错误。

### 进程软限制

#### 描述

限制用户可以创建的进程总数.所有现有的进程都将被计算在这个限制之内,而不仅仅是要启动的新进程。
该限制可以在服务器级别或单个外部应用级别进行设置.如果未在应用级别设置，则将使用服务器级别的限制. 如果该值为0或服务器级和应用级都没有设置,将使用操作系统的默认设置

#### 语法

非负整数

#### 提示

Information PHP脚本可以派生进程。此限制的主要目的，是作为最后一道防线，防止PHP进程继续创建其他进程而造成fork bomb或其他攻击。
将此设置得太低可能会严重影响功能。因此，当设置低于某些级别时将被忽略。
当开机自启设置为“Yes (Daemon mode)”时，实际进程限制会高于此设置，以确保父进程不会被限制。

### 进程硬限制

#### 描述

与进程软限制非常相同，但是，在用户进程中软限制 可以被放宽到硬限制的数值。硬限制可以在服务器级别或独立的外部应用程序级别设 置。如果未在独立的外部应用程序级别设定限制，将使用服务器级别的限制。 如果在两个级别都没有设置该限制，或者限制值设为0，将使用操 作系统的默认设置。

#### 语法

非负整数