静态上下文
目录
静态上下文
静态上下文
描述
上下文设置用于为特定位置的文件指定特殊设置。 这些设置可用于引入文档根目录外的文件(类似Apache的Alias或AliasMatch指令), 使用授权域保护特定目录,或阻止/限制对文档根目录中特定目录的访问。
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"和"&"可引用整个匹配字符串。此外,可以追加"?"和查询字符串来设置查询字符串。注意:查询字符串中的"&"应转义为"\&"。
示例
要模拟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。
另请参阅
启用过期
描述
指定是否为静态文件生成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]
示例
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'指令是可选的。从其他位置复制规则时,可以移除或保留它,不会影响使用。
MIME类型
描述
为此上下文指定额外的MIME类型映射。新映射会覆盖此上下文及其子上下文下的现有映射。
如果要将PHP脚本显示为文本文件而不是作为脚本执行,则只需覆盖.php映射到MIME类型"text/plain"
语法
MIME-type1 extension extension ..., MIME-type2 extension ... 使用逗号分隔MIME类型,使用空格分隔多个扩展名。
示例
自动索引
描述
在目录中,当索引文件中所列的索引文件不可用时,指定运行时是否即时生成目录索引。
此选项可以在虚拟主机级别和Context级别中设置,并可以顺着目录树继承,直到被显式覆盖。 您可以自定义生成的索引页面。请查看在线Wiki操作指南。
语法
布尔值
提示
[安全] 建议尽可能关闭自动索引,以防止泄露机密数据。
另请参阅
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重写指南 .
语法
字符串
php.ini覆盖
描述
用于覆盖当前Context(虚拟主机级别或Context级别)中的php.ini设置。
支持的指令是:
php_value
php_flag
php_admin_value
php_admin_flag
所有其他行/指令将被忽略。
语法
覆盖语法类似于Apache:每行一个指令及其值,每个指令前根据需要加上php_value、php_flag、php_admin_value或php_admin_flag。
示例
php_admin_flag engine on
php_admin_value open_basedir "/home"