让 Nginx 支持 SSI (Server Side Includes)

本文介绍了如何在Nginx中启用SSI(Server Side Includes),这是一种使静态页面具备动态页面功能的技术。通过简单的配置即可实现文件包含等操作,并讨论了其在缓存方面的应用及局限性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

什么是 SSI (Server Side Includes) ?
用过Apache的都应该知道吧,它可以使静态网页实现像动态网页一样 include 的功能,还有一些简单的语法
Nginx 居然默认就自带了 SSI

在 Nginx 开启 SSI ,加入以下3行就OK了,可以放在 http, server, 和location 段都行

ssi on;
ssi_silent_errors on;
ssi_types text/shtml;

使用方法举例:

<p>21andy.com Nginx + SSI</p>
<!--# include file="/tmp/test.html"-->

注意路径的问题,不是硬盘的绝对路径,而是站点的绝对路径

不过我看到官方的文档里说,SSI有个毛病,就是 Last-Modified 和 Content-Length不会发送
that when SSI is enabled the Last-Modified and Content-Lengthheaders are not sent
实际测试了一下,确实如此,唉,美中不足啊

 

Nginx内置有缓存内存的模块NginxHttpMemcachedModule

,它可以支持简单的缓存。Nginx+SSI+Memcached是目前追求高性能潮流中流行的架构配搭,它利用服务器端的脚本程序,处理访问请求并从memcache中检索数据或直接从后端读取数据。其中,SSI 就是ServerSideIncludes,中文翻译为服务器端包含,它提供一种对现有HTML 文档增加动态内容的方法。值得欣慰的是Nginx也有内置的SSI 模块ngx_http_ssi_module。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值