ssi
'ssi' 指令在指定的上下文中启用或禁用服务器端包含(SSI)功能。 — NGINX HTTP Core
ssi
httpserverlocationif in location
语法ssi on | off;
默认值off
上下文http, server, location, if in location
模块NGINX HTTP Core
参数flag
说明
'ssi' 指令是 NGINX HTTP Core 模块的一部分,用于控制 Server Side Includes (SSI) 的使用,允许通过在 HTML 文件中嵌入服务器端指令来生成动态内容。此功能主要用于包含通用的页眉和页脚模板、插入动态内容,以及在需要在页面之间共享内容而不进行静态复制的其他场景。该指令接受一个标志作为参数,可通过 (on) 启用或通过 (off) 禁用在 HTTP、server 和 location 上下文中的 SSI 功能。 当启用 SSI 时,NGINX 会处理包含 SSI 指令的文件,在提供这些文件时对其进行解释。例如,可以在 HTML 文档中使用 `` 这样的指令来包含指定文件的内容。务必确保包含 SSI 指令的文件以支持 SSI 的媒体类型(例如 text/html)提供,以便正常工作。如果 SSI 未正确配置,NGINX 将原样提供未解析的内容,这可能导致混淆和意外输出。 此外,值得注意的是启用 SSI 可能会对性能产生影响,因为它会增加请求处理的开销。为优化性能,应在高流量场景中谨慎使用 SSI,并考虑缓存等措施以缓解由处理 SSI 指令引入的额外负载。
配置示例
location / {
ssi on;
ssi_silently on;
root /usr/share/nginx/html;
index index.html;
}⚠
确保在允许的上下文中使用 `ssi` 指令,例如 http、server 或 location。
⚠
使用 SSI 指令的文件必须具有 text/html 内容类型,才能被正确处理。
⚠
在高流量站点中使用 SSI 可能导致性能问题;可能需要采用缓存策略。