Nginx+ssi结合配置

来源:互联网 发布:bearychat mac 编辑:程序博客网 时间:2024/05/17 05:56

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

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

http {
    ssi on;
    ssi_silent_errors on;
    ssi_types text/shtml;
    include       mime.types;
    default_type  application/octet-stream;

   server {
        ssi on;
        ssi_silent_errors on;
        ssi_types text/shtml;
        listen       80;
        server_name  localhost;


 location = /50x.html {
   ssi on;
            ssi_silent_errors on;
            ssi_types text/shtml;
            root   html;

等三个域进行配置.

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。

0 0