配置启用SSI nginx?

时间:2013-03-09 04:55:22

标签: nginx ssi

我想做服务器端包含,我在我的机器上安装了nginx服务器,我无法找到在nginx.conf文件中启用ssi的方法? 我能从互联网上找到的是

syntax: ssi on | off;

默认:
ssi off; context:http,server,location,if in locat

4 个答案:

答案 0 :(得分:7)

在位置上下文中启用ssi。在我的情况下,我希望它在根

location / {
   ssi on;
}

答案 1 :(得分:5)

看起来你遇到了同样的问题;找到如何在NGINX上启用SSI的清晰解释。 Crystal Clear不仅要使用哪种语法,还要包含格式,以及确切包含它的位置。我想通了,并不是那么困难,但在互联网上缺乏明确的指示令人沮丧。

您需要打开nginx.conf文件并查找格式如下的部分(我还包括'ssi on'语法):

location / {
            root   E:\website\FinalJRLWeb;
            index  index.html index.shtml;
            ssi on;
        }

我花了一点时间才意识到这个位置,但它真的很简单,就像在指定的索引文件名下面添加'ssi'一样简单(它应该能够真正去你喜欢的任何地方,我不喜欢不要想象这个顺序很重要,只要它在两个括号{}内。

之后,要验证SSI是否在您的NGINX服务器上运行,请在空白html页面的“body”标记中的任意位置添加以下行

<!--#echo var="DATE_LOCAL" -->

并使用扩展名.shtml将其保存在Web服务器的根目录中。

您应该会在访问页面时看到服务器的本地日期和时间。我意识到这已经快一年了,但在我试图找到明确指示的挫折之后,我想尽力为其他可能需要它们的人提供明确的指示。所以希望这会帮助别人!

这是NGINX关于SSI的文档页面(老实说,我没有像我希望的那样帮助我,但它仍然有用,而且只能变得越来越有用)

http://nginx.org/en/docs/http/ngx_http_ssi_module.html#ssi_last_modified

答案 2 :(得分:0)

默认情况下,ssi仅适用于text/html MIME类型;这可能会让你感到沮丧,尽管这里有明确记载http://nginx.org/en/docs/http/ngx_http_ssi_module.html#ssi_types

您可能需要添加

ssi on;
ssi_types *;  # Or something more specific

答案 3 :(得分:0)

在NGINX上为单个域启用SSI

要为仅一个域启用SSI(以限制可能的安全漏洞),您可以按如下所示将其添加到该域的 .conf文件中-在Debian中,这些是(颇有争议)存储在类似Apache的系统中的“ etc / nginx / sites-available”下。

server {
  server_name mydomain.com;

  root /home/username/html;
  index index.html index.shtml;

  location / {
    ssi on;
    ...otherstuffhere
  }
}

关键部分:

  • index index.html index.shtml;
  • ssi on;