### OpenLiteSpeed Web Server Users' Manual

##### Version 1.6 — Rev. 2

- License
- Introduction
- Installation
- Administration
  - Service Manager
- Security
- Configuration
  - Server General
  - Server Log
  - Server Tuning
  - Server Security
  - External Apps
  - Fast CGI App
  - Fast CGI Authorizer
  - LSAPI App
  - Servlet Engine
  - Web Server
  - Piped logger
  - Load Balancer
  - Script Handler
  - App Server Settings
  - Module Configuration
  - Listener General
  - Listener SSL
  - Virtual Host Templates
  - Virtual Host Basic
  - Virtual Host General
  - Virtual Host Security
  - Virtual Host SSL
  - Rewrite
  - Context
  - Static Context
  - Java Web App Context
  - Servlet Context
  - Fast CGI Context
  - LSAPI Context
  - Proxy Context
  - CGI Context
  - Load Balancer Context
  - Redirect Context
  - App Server Context
  - Module Handler Context
  - Web Socket Proxy
- Web Console
  - Admin Console General
  - Admin Console Security
  - Admin Listener General
  - Admin Listener SSL

# Server General

General settings for the whole server. When path information is required in a setting, it can be either absolute or relative to $SERVER_ROOT. $SERVER_ROOT is the location where LiteSpeed web server has been installed (your_home_dir/lsws or /opt/lsws, for example). The server executable is under $SERVER_ROOT/bin.

## Table of Contents

### 服务器名称⇑

#### Description

该服务器的唯一名称。您可以在此填写 $HOSTNAME 。

#### Syntax

文本

### Number of Workers⇑

#### Description

Specifies the number of httpd workers.

#### Syntax

Integer value between 1 and 16.

#### Tips

Set an appropriate number to suit your needs. Adding more workers may not necessarily mean better performance.

### Running As⇑

#### Description

Specifies the user/group that the server process runs as. This is set using the parameters "--with-user" and "--with-group" when running the configure command before installation. To reset these values, you must rerun the configure command and reinstall.

#### Apply

Reinstall required.

#### Tips

Server should not run as a privileged user such as "root". It is critical that the server is configured to run with a un-privileged user/group combination that does not have login/shell access. A user/group of nobody is generally a good choice.

### 优先级⇑

#### Description

指定服务进程的优先级。数值范围从 -20 到 20。数值越小，优先级越高。

#### Syntax

整数

#### Tips

[性能建议] 通常在繁忙的服务器上，较高的优先级会得到性能的小幅提升。 不要设置比数据库进程更高的优先级。

#### See Also

External App Priority, CGI优先级

### CPU Affinity⇑

#### Description

CPU affinity binds a process to one or more CPUs (cores). It is beneficial for a process to always use the same CPU because then the process can make use of data left in CPU cache. If the process moves to a different CPU, there is no use of CPU cache and unnecessary overhead is required.
The CPU Affinity setting controls how many CPUs (cores) one server process will be associated with. The minimum value is 0, which will disable this feature. The maximum value is the number of cores the server has. Generally, 1 is the best setting because because it creates the strictest use of CPU affinity and thus makes the most use of CPU cache.
Default value: 0

#### Syntax

Integer value from 0 to 64. (0 will disable this feature)

#### Apply

Reinstall required.

### Cloud-Linux⇑

#### Description

指定当CloudLinux存在时是否启用CloudLinux的轻量级虚拟 环境（LVE）。您可以搭配使用Litespeed与LVE实现更好的资源管理。 欲了解更多信息，请访问 http: //www.cloudlinux.com。

#### Syntax

选项

### 最大的读写缓冲区大小⇑

#### Description

指定用于存储请求内容和相应的动态响应的最大缓冲区大小。达到此限制时， 服务器将在交换目录中创建临时交换文件。

#### Syntax

无符号整数

#### Tips

[性能] 设置足够大的缓冲区，以容纳所有并发 请求/响应，避免内存和磁盘数据交换。如果交换目录（默认为/tmp/lshttpd/swap/）存在频繁的读写活动，说明缓冲区太小，LiteSpeed正在使用交换文件。

#### See Also

交换目录

### 交换目录⇑

#### Description

指定交换文件的存放目录。 服务器在chroot模式启动时，该路径相对于新的根目录， 否则，它相对于真正的根目录。
Litespeed使用自己的虚拟内存 以降低系统的内存使用量。虚拟内存和磁盘交换会用来存储大的请求内容和 动态响应。交换目录应设置在有足够剩余空间的磁盘上。

#### Syntax

绝对路径

#### Tips

[性能建议] 将交换目录设置在一个单独的磁盘上，或者增加最大读写缓冲区大小以避免交换。

#### See Also

最大的读写缓冲区大小

### 自动修复503错误⇑

#### Description

指定是否尝试通过平滑重启LiteSpeed修复“503 服务不可用”错误。“503”错误通常是由 发生故障的外部应用程序引起的，Web服务器重新启动往往可以临时修复 错误。如果启用，当30秒内出现超过30次“503”错误时，服务器将自动 重新启动。此功能是默认启用的。

#### Syntax

布尔值

### Enable HTTP/2 Over Cleartext TCP⇑

#### Description

Specifies whether to enable HTTP/2 over non-encrypted TCP connections. Default is disabled.

#### Syntax

Select from radio box

### 平滑重启超时时长⇑

#### Description

平滑重启时，即使新的服务器实例已经启动，旧的实例仍将继续 处理现有的请求。此项超时设置定义了旧实例等待多长时间后中止。 默认值是300秒。 -1表示永远等待。 0表示不等待，立即中止。

#### Syntax

整数

### Statistics Output Directory⇑

#### Description

The directory where the Real-Time Stats report file will be written. The default directory is /tmp/lshttpd/ .

#### Syntax

绝对路径

#### Tips

During server operation, the .rtreport file will be written to every second. To avoid unnecessary disk writes, set this to a RAM Disk.
The .rtreport file can be used with 3rd party monitoring software to track server health.

### MIME设置⇑

#### Description

为此服务器指定包含MIME设置的文件。 在chroot模式中提供了绝对路径时，该文件路径总是相对于真正的根。 点击文件名可查看/编辑详细的MIME项。

#### Syntax

文件2

#### Tips

Click the filename to edit the MIME settings.

### 后缀⇑

#### Description

你可以列出相同MIME类型的多个后缀，用逗号分隔。

### MIME类型⇑

#### Description

一个MIME类型由一个类型和子类型组成，格式为“类型/子类型”。

### Disable Initial Log Rotation⇑

#### Description

Specifies whether to enable/disable rotation of server error log file at startup. Initial log rotation is enabled by default when using value "Not Set".

#### Syntax

Select from radio box

### 服务器签名⇑

#### Description

指定是否在响应头的Server参数中显示服务器签名和版本号。 有三个选项: 当设置为Hide Version时、只显示LiteSpeed。当设置为 Show Version，显示LiteSpeed和版本号。 设置为Hide Full Header时，整个Server头都不会显示在响应报头中。

#### Syntax

布尔值

#### Tips

[安全建议] 如果你不想暴露服务器的版本号，设置为Hide Version。

### 启用IP地理定位⇑

#### Description

指定是否启用IP地理定位查找。 可以在服务器级别，虚拟主机级别，或context级别设置。

#### Syntax

布尔值

#### See Also

使用报头中的客户端IP, 数据库文件路径,

### 使用报头中的客户端IP⇑

#### Description

指定是否将在HTTP请求报头中的X-Forwarded-For参数列出的IP地址，用于 所有的IP地址相关的功能，包括 连接/带宽限制、访问控制和IP地理定位。
如果你的Web服务器放置在负载均衡器或代理服务器之后，此功能非常有用。 如果您选择了“仅限受信任的IP”，只有在请求来自受信任IP时，X-Forwarded-For 中的IP才会被使用。受信任IP可在服务器级别的允许列表中定义。

#### Syntax

选项

### 管理员电子邮箱⇑

#### Description

指定服务器管理员的电子邮箱地址。 如果设置了电子邮箱地址，管理员将收到重要事件的电子邮件通知（例如， LiteSpeed服务因崩溃而自动重启或者授权即将过期）。

#### Syntax

逗号分隔的电子邮箱地址列表。

#### Tips

电子邮件提醒功能只在服务器拥有有效的邮件服务时才能正常工作，如postfix、exim或sendmail。

### 索引文件⇑

#### Description

指定URL映射到目录时顺序查找的索引文件名称。 您可以在服务器、虚拟主机和Context级别对其进行自定义。

#### Syntax

逗号分隔的索引文件名列表。

#### Tips

[性能建议] 只设置你需要的索引文件。

### 自动索引⇑

#### Description

在目录中，当索引文件中所列的索引文件不可用时，指定运行时是否即时生成目录索引。
此选项可以在虚拟主机级别和context级别中设置，并可以顺着目录树继承，直到被覆盖。 您可以自定义生成的索引页面。请访问在线百科了解如何操作。

#### Syntax

布尔值

#### Tips

[安全建议] 建议关闭自动索引，从而尽可能防止泄露机密数据。

#### See Also

索引文件, 自动索引URI

### 自动索引URI⇑

#### Description

在目录中，当索引文件中所列出的索引文件（index）不可用时，指定用来生成索引页面的URI。 LiteSpeed Web服务器使用一个外部脚本来生成索引页面，从而为定制提供最大的灵活性。 默认的脚本生成一个类似于Apache的索引页面。 定制生成的索引页，请访问在线百科。 被索引的目录通过一个环境变量 "LS_AI_PATH"来传递给脚本。

#### Syntax

URI

#### See Also

索引文件, 自动索引

### 启用过期⇑

#### Description

指定是否为静态文件生成Expires头。如果启用，将根据 默认过期和按类型过期生成Expires头。
这可以在服务器，虚拟主机和Context级别设置。低级别的设置将 覆盖高级别的设置。例如，Context级别的设置将覆盖虚拟主机级别的设置， 虚拟主机级别的设置将覆盖服务器级别的设置。

#### Syntax

布尔值

### 默认过期⇑

#### Description

指定生成Expires头的默认设置。该设置在启用过期 设为“启用”时有效。它可以被按类型过期覆盖。 除非必要，否则不要在服务器或虚拟主机级别设置该默认值。 因为它会为所有网页生成Expires头。大多数时候，应该是 为不常变动的某些目录在Context级别设置。如果没有默认设置，按类型过期中未指定的类型不会生成Expires头。

#### Syntax

A|M秒数
文件将在基准时间（A|M）加指定秒数的时间后失效。 “A”代表基准时间为客户端的访问时间，“M”代表文件的最后修改时间。

### 按类型过期⇑

#### Description

为各个MIME类型分别指定Expires头设置。

#### Syntax

逗号分隔的“MIME-类型=A|M秒数”的列表。 文件将在基准时间（A|M）加指定秒数的时间后失效。
“A”代表基准时间为客户端的访问时间，“M”代表文件的最后修改时间。 MIME-类型可使用通配符“*”，如image/*。

### Auto Load from .htaccess⇑

#### Description

Autoload rewrite rules contained in a directory's .htaccess file when first accessing that directory if an HttpContext for that directory using the rewritefile directive does not already exist. Once initially loaded, a graceful restart must be performed for any further changes to that .htaccess file to take effect.
Virtual Host-level setting overrides Server-level setting. Default values:
Server-level: No
VH-Level: Inherit Server-level setting

#### Syntax

Select from radio box

### File Upload⇑

#### Description

Provides additional security functionality when uploading files by using a Request Body Parser to parse files to a server local directory where they can be easily scanned for malicious intent by third party modules. Request Body Parser is used when Pass Upload Data by File Path is enabled or a module calls LSIAPI’s set_parse_req_body in the LSI_HKPT_HTTP_BEGIN level. API examples provided in source package.

#### See Also

Hook::HTTP_BEGIN Priority

### Temporary File Path⇑

#### Description

Temporary directory where files being uploaded to server will be stored while request body parser is working. Default value is /tmp/lshttpd/.

#### Syntax

Absolute path or path starting with $SERVER_ROOT (for Server and VHost levels) or $VH_ROOT (for VHost levels).

### Temporary File Permissions⇑

#### Description

Determines file permissions used for files stored in temporary directory. Server level setting is global, can be overridden at VHost level.

#### Syntax

3 digits octet number. Default value is 666.

### Pass Upload Data by File Path⇑

#### Description

Specify whether or not to pass upload file data by path. If enabled, file path along with some other information is sent to backend handler instead of file itself when uploading. This saves on CPU resources and file transfer time but requires some updates to backend to implement. If disabled, file content will be transferred to backend handler, request body is still parsed to files.

#### Syntax

Select from radio box

#### Tips

Enable this to speed up file upload processing if backward compatibility is not an issue.

### IP地理定位数据库⇑

#### Description

多个MaxMind地理定位数据库可以在这里指定。MaxMind有以下数据库类型: 国家，地区，城市，组织，ISP和NETSPEED。如果混合配置“国家”，“地区”，和“城市”类型数据库，则最后一项将会生效。

### 数据库文件路径⇑

#### Description

指定MaxMind GeoIP数据库路径。

#### Syntax

文件路径

#### Example

/usr/local/share/GeoIP/GeoLite2-Country.mmdb

### DB Name⇑

#### Description

MaxMind GeoIP database name. As of GeoIP2, this setting is required.
When upgrading from a GeoIP to a GeoIP2, using values "COUNTRY_DB", "CITY_DB", or "ASN_DB" for this setting will automatically populate PHP's $_SERVER variable with some GeoIP compatible entries (listed by DB Name value below) to help ease this transition.
CITY_DB: 'GEOIP_COUNTRY_CODE', 'GEOIP_COUNTRY_NAME', 'GEOIP_CONTINENT_CODE', 'GEOIP_COUNTRY_CONTINENT', 'GEOIP_DMA_CODE', 'GEOIP_METRO_CODE', 'GEOIP_LATITUDE', 'GEOIP_LONGITUDE', 'GEOIP_POSTAL_CODE', and 'GEOIP_CITY'.
COUNTRY_DB: 'GEOIP_COUNTRY_CODE', 'GEOIP_COUNTRY_NAME', 'GEOIP_CONTINENT_CODE', and 'GEOIP_COUNTRY_CONTINENT'.
ASN_DB: 'GEOIP_ORGANIZATION' and 'GEOIP_ISP'.

#### Example

COUNTRY_DB

### Environment Variables⇑

#### Description

Assign the results of database lookups to environment variables.

#### Syntax

Variable_Name mapped_DB_data
One entry per line. Path to data can use map keys or 0-based array indexes, both being separated by /.

#### Example

COUNTRY_CODE COUNTRY_DB/country/iso_code
REGION_CODE CITY_DB/subdivisions/0/iso_code

### IP2Location DB File Path⇑

#### Description

The location of a valid database file.

#### Syntax

Filename which can be an absolute path or a relative path to $SERVER_ROOT.

### DB Cache Type⇑

#### Description

The caching method used. The default value is Memory.

#### Syntax

Select from drop down list