OpenLiteSpeed logo OpenLiteSpeed用户手册

应用服务器上下文

目录

App Server上下文

App Server上下文

描述

App Server上下文提供了一种简便方式来配置Ruby Rack/Rails、WSGI或Node.js应用程序。 通过App Server上下文添加应用程序时,只需要挂载URL和应用程序根目录。 无需额外定义外部应用程序、添加404处理程序或编写重写规则等。

URI

描述

指定此上下文的URI。

语法

URI可以是普通URI(以"/"开头),也可以是Perl兼容的正则表达式URI(以"exp:"开头)。 如果普通URI以"/"结尾,则此上下文将包含该URI下的所有子URI。 如果上下文映射到文件系统上的目录,则必须添加结尾的"/"。

另请参阅

位置

位置

描述

指定此上下文在文件系统中的对应位置。

默认值:$DOC_ROOT + URI

语法

可以是绝对路径,也可以是相对于$SERVER_ROOT、$VH_ROOT或$DOC_ROOT的路径。 $DOC_ROOT是默认相对路径,可以省略。

如果URI是正则表达式,匹配的子字符串可用于组成"Root"字符串。匹配的子字符串可通过"$1"到"$9"引用;"$0"和"&"可引用整个匹配字符串。此外,可以追加"?"和查询字符串来设置查询字符串。注意:查询字符串中的"&"应转义为"\&"。

示例

位置设为/home/john/web_examples时,类似/examples/的普通URI会将请求"/examples/foo/bar.html"映射到文件"/home/john/web_examples/foo/bar.html"。
要模拟Apache的mod_userdir,可将URI设为exp: ^/~([A-Za-z0-9]+)(.*),并将位置设为/home/$1/public_html$2。这样,URI /~john/foo/bar.html的请求会映射到文件/home/john/public_html/foo/bar.html。

另请参阅

URI

二进制文件路径

描述

App Server应用程序二进制文件的位置。

应用程序类型

描述

此上下文使用的应用程序类型。支持Rack/Rails、WSGI和Node.js。

启动文件

描述

用于启动应用程序的文件,路径应相对于应用程序根目录。

默认的启动文件包括Rack/Rails的'config.ru'、WSGI的'wsgi.py'和'passenger_wsgi.py',以及Node.js的'app.js'。

语法

相对于应用程序根目录的路径

运行模式

描述

指定应用程序的运行模式:"Development"(开发)、 "Production"(生产)或"Staging"(预发布)。默认值为"Production"(生产)。

语法

从下拉列表选择

最大连接数

描述

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

语法

非负整数

提示

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

环境变量

描述

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

语法

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

启用过期

描述

指定是否为静态文件生成Expires头。如果启用,将根据 默认过期按类型过期生成Expires头。

这可以在服务器、虚拟主机和上下文级别设置。低级别的设置将 覆盖高级别的设置。例如,上下文级别的设置将覆盖虚拟主机级别的设置, 虚拟主机级别的设置将覆盖服务器级别的设置。

语法

布尔值

默认过期

描述

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

语法

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

按类型过期

描述

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

语法

逗号分隔的“MIME-类型=A|M秒数”的列表。 文件将在基准时间(A|M)加指定秒数的时间后失效。

“A”代表基准时间为客户端的访问时间,“M”代表文件的最后修改时间。 MIME-类型可使用通配符“*”,如image/*。

头部操作

描述

指定要添加的附加响应/请求头。可添加多个头指令,每行一个。"NONE"可用于禁用父级头继承。如果未提供指令,则假定为"Header"。

语法

[Header]|RequestHeader [condition] set|append|merge|add|unset header [value] [early|env=[!]variable]

示例

set Cache-control no-cache
append Cache-control no-store
Header set My-header cust_header_val
RequestHeader set My-req-header cust_req_header_val

提示

信息 语法和用法类似于 Apache的mod_headers指令

信息 'Header'指令是可选的。从其他位置复制规则时,可以移除或保留它,不会影响使用。

索引文件

描述

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

语法

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

提示

性能 只设置你需要的索引文件。

自动索引

描述

在目录中,当索引文件中所列的索引文件不可用时,指定运行时是否即时生成目录索引。
此选项可以在虚拟主机级别和Context级别中设置,并可以顺着目录树继承,直到被显式覆盖。 您可以自定义生成的索引页面。请查看在线Wiki操作指南。

语法

布尔值

提示

安全 建议尽可能关闭自动索引,以防止泄露机密数据。

另请参阅

索引文件, 自动索引URI

领域

描述

指定此上下文的授权域。 指定后,必须提供有效的用户名和密码才能访问此上下文。 授权Realm需要在虚拟主机安全部分进行设置。 此设置使用每个授权域的领域名称

语法

从下拉列表选择

认证名称

描述

为当前上下文的授权域指定一个替代名称。 如果未指定,将使用原授权域名称。 认证名称会显示在浏览器登录弹窗中。

语法

文本

要求(已认证的用户/组)

描述

指定哪些用户/用户组可以访问此上下文。 这允许你在多个上下文中使用同一个用户/组数据库(由领域指定), 但只允许该数据库中的特定用户/组访问此上下文。

语法

语法与Apache的Require指令兼容。例如:

  • user username [username ...]
    只有列出的用户可以访问此上下文。
  • group groupid [groupid ...]
    只有属于列出组的用户可以访问此上下文。
如果未指定此设置,所有有效用户都可以访问此资源。

允许访问列表

描述

指定允许访问此上下文下资源的IP地址或子网。综合 拒绝访问列表项的配置以及服务器/虚拟主机级别访问控制, 可访问性将以客户端IP所符合的最小范围来确定。

语法

逗号分隔的IP地址/子网列表。

示例

网络可以写成192.168.1.0/255.255.255.0, 192.168.1192.168.1.*

拒绝访问列表

描述

指定哪些IP地址或子网不允许访问此上下文下的资源。 综合允许访问列表项的配置以及服务器/虚拟主机级别访问控制, 可访问性将以客户端IP所符合的最小范围来确定。

语法

逗号分隔的IP地址/子网列表。

示例

子网络可以写成192.168.1.0/255.255.255.0, 192.168.1192.168.1.*

授权器

描述

指定可用于生成授权/未授权决策的外部应用程序。目前仅FastCGI授权器可用。有关FastCGI授权器角色的更多详细信息, 请访问https://fastcgi-archives.github.io/

语法

从下拉列表选择

启用重写

描述

指定是否启用LiteSpeed的URL重写引擎。 此选项可在虚拟主机或Context级别自定义, 并会沿目录树继承,直到被显式覆盖。

语法

布尔值

重写继承

描述

指定是否从父级上下文继承重写规则。 如果启用重写但不继承,将使用此上下文中定义的重写基准和重写规则。

语法

布尔值

重写基准

描述

指定重写规则的基准URL。

语法

URL

重写规则

描述

指定虚拟主机级别的重写规则列表。

请勿在此处添加任何文档根级别的重写规则。 如果有来自.htaccess的文档根级别重写规则,请改为创建URI为"/"的静态Context, 并在那里添加这些重写规则。

重写规则由一个RewriteRule指令组成,并且前面可以选择性地放置多个RewriteCond指令。

  • 每条指令应只占一行。
  • RewriteCondRewriteRule遵循Apache的重写指令语法。可以直接从Apache配置文件复制并粘贴重写指令。
  • LiteSpeed与Apache mod_rewrite的实现有细微差别:
    • %\{LA-U:variable\}%\{LA-F:variable\}会被LiteSpeed重写引擎忽略。
    • LiteSpeed重写引擎新增了两个服务器变量: %\{CURRENT_URI\}表示重写引擎正在处理的当前URI, %\{SCRIPT_NAME\}与对应CGI环境变量含义相同。
    • LiteSpeed重写引擎遇到[L]标志后会停止处理重写规则以避免循环; Apache mod_rewrite只会停止当前迭代中的重写规则处理。此行为类似于Apache mod_rewrite中的[END]标志。

LiteSpeed重写引擎实现遵循Apache重写引擎规范。 有关重写规则的更多详细信息,请参阅 Apache mod_rewrite文档 Apache URL重写指南 .

语法

字符串

添加默认字符集

描述

指定当内容类型为"text/html"或"text/plain"且没有参数时,是否向"Content-Type"响应报头添加字符集标记。设置为时,该功能禁用。设置为时,将添加自定义默认字符集中指定的字符集;如果未指定,则添加默认的"iso-8859-1"字符集。

语法

布尔值

自定义默认字符集

描述

指定当添加默认字符集时使用的字符集。此项可选,默认值为iso-8859-1。当添加默认字符集时,本设置不生效。

语法

字符集名称。

示例

utf-8

启用IP地理定位

描述

指定是否启用IP地理定位查找。 可以在服务器、虚拟主机或上下文级别设置。使用“Not Set”值时,默认禁用IP地理定位。

语法

布尔值

另请参阅

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