CGI上下文
目录
CGI上下文
CGI上下文
描述
CGI上下文会将特定目录中的脚本定义为CGI脚本。 该目录可以位于文档根目录内或外。 请求此目录下的文件时,无论文件是否可执行,服务器都会尝试将其作为CGI脚本执行。 这样,CGI上下文下的文件内容始终受到保护,不能作为静态内容读取。 建议将所有CGI脚本放在一个目录中,并设置CGI上下文来访问它们。
URI
描述
指定此上下文的URI。
语法
URI可以是普通URI(以"/"开头),也可以是Perl兼容的正则表达式URI(以"exp:"开头)。 如果普通URI以"/"结尾,则此上下文将包含该URI下的所有子URI。 如果上下文映射到文件系统上的目录,则必须添加结尾的"/"。
另请参阅
路径
描述
指定CGI脚本的位置。
语法
路径可以是包含一组CGI脚本的目录,例如$VH_ROOT/myapp/cgi-bin/。 这种情况下,上下文URI必须以"/"结尾,例如/app1/cgi/。 路径也可以只指定一个CGI脚本,例如$VH_ROOT/myapp/myscript.pl。 该脚本应有对应的URI /myapp/myscript.pl。
标头控制
描述
指定要添加的附加响应/请求头。可添加多个头指令,每行一个。"NONE"可用于禁用父级头继承。如果未提供指令,则假定为"Header"。
语法
[Header]|RequestHeader [condition] set|append|merge|add|unset header [value] [early|env=[!]variable]
示例
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'指令是可选的。从其他位置复制规则时,可以移除或保留它,不会影响使用。
允许设置UID
描述
指定CGI脚本是否允许set UID位。如果允许,并且CGI脚本启用了set UID位,那么无论CGI脚本代表哪个用户启动,CGI进程的用户ID都会切换为CGI脚本所有者的用户ID。
默认值为"Off"。
语法
布尔值
提示
[安全建议] 尽可能不要允许CGI脚本设置UID,因为这本身存在安全风险。
Require(授权的用户/组)
描述
指定哪些用户/用户组可以访问此上下文。 这允许你在多个上下文中使用同一个用户/组数据库(由域指定), 但只允许该数据库中的特定用户/组访问此上下文。
语法
语法与Apache的Require指令兼容。例如:
- user username [username ...]
只有列出的用户可以访问此上下文。 - group groupid [groupid ...]
只有属于列出组的用户可以访问此上下文。
允许访问列表
描述
指定允许访问此上下文下资源的IP地址或子网。综合 拒绝访问列表项的配置以及服务器/虚拟主机级别访问控制, 可访问性将以客户端IP所符合的最小范围来确定。
语法
逗号分隔的IP地址/子网列表。
示例
拒绝访问列表
描述
指定哪些IP地址或子网不允许访问此上下文下的资源。 综合允许访问列表项的配置以及服务器/虚拟主机级别访问控制, 可访问性将以客户端IP所符合的最小范围来确定。
语法
逗号分隔的IP地址/子网列表。
示例
授权器
描述
指定可用于生成授权/未授权决策的外部应用程序。目前仅FastCGI授权器可用。有关FastCGI授权器角色的更多详细信息, 请访问https://fastcgi-archives.github.io/。
语法
从下拉列表选择
添加默认的字符集
描述
指定当内容类型为"text/html"或"text/plain"且没有参数时,是否向"Content-Type"响应报头添加字符集标记。设置为Off时,该功能禁用。设置为On时,将添加自定义默认字符集中指定的字符集;如果未指定,则添加默认的"iso-8859-1"字符集。
语法
布尔值
重写规则
描述
指定虚拟主机级别的重写规则列表。
请勿在此处添加任何文档根级别的重写规则。 如果有来自.htaccess的文档根级别重写规则,请改为创建URI为"/"的静态Context, 并在那里添加这些重写规则。
重写规则由一个RewriteRule指令组成,并且前面可以选择性地放置多个RewriteCond指令。
- 每条指令应只占一行。
- RewriteCond和RewriteRule遵循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重写指南 .
语法
字符串