# [转]NginxChsHttpSsiModule - Nginx 中文站

本模块提供对 Server-Side Includes (SSI) 功能的支持，请注意， nginx 对 SSI 的功能支持暂时还是不完全的，无法实现一些在 apache 中正常的 SSI 功能。

示例location / {

ssi on;

}

指令

ssi

syntax:ssi [ on | off ]

default:ssi off

context:http, server, location, if in location

激活 SSI 处理。

ssi_silent_errors

语 法：ssi_silent_errors [on|off]

默认值：ssi_silent_errors off

作用域：http, server, location

Doesn't output "[an error occurred while processing the directive]", if an error occurs while processing the SSI.

ssi_types

syntax:ssi_types mime-type [mime-type ...]

default:ssi_types text/html

context:http, server, location

Enables SSI processing for MIME-types in addition to "text/html" types.

SSI 命令

Instruction format is the following

The supported SSI commands are listed below:

block— command describes the block, which can be used as a silencer in command include. Inside the block there can be commands SSI.

name— the name of the block. For example:

the silencer

config— assigns some parameters with working SSI.

errmsg— the line, which is derived with the error during the SSI processing. By default, this string is used: "[an error occurred while processing the directive]"

timefmt— the time formatting string, as used in strftime(3). By default, this string is used: "%A, %d-%b-%Y %H:%M:%S %Z"

To include time in seconds use the format "%s" as well.

echo- print a variable

var— the name of the variable

default- if the variable is empty, display this string. Defaults to "none". Example:

is the same as no

if/elif/else/endif— conditionally include text or other directives. Usage:

...

...

...

Only one level of nesting is possible.

expr— the expression to evaluate. It can be a variable:

A string comparison:

Or a regex match:

Если в text встречаются переменные, то производится подстановка их значений.

include— include a document from another source.

file— include a file, e.g.

virtual— include a request, e.g.

Multiple requests will be issued in parallel. If you need them issued sequentially, use the "wait" option.

stub— The name of the block to use as a default if the request is empty or returns an error.

wait— when set to yes, the rest of the SSI will not be evaluated until the current request is finished. Example:

set- assign a variable.

var — the variable.

value — its value. If it contains variable names, these will be evaluated.

内置变量

本模块提供两个内置的变量：

$date_local- 本地时间，输出格式可以由选项 "timefmt" 控制。$date_gmt- 格林威治时间，输出格式可以由选项 "timefmt" 控制。

http://www.nginx.cn/NginxChsHttpSsiModule