NGINX SSI不工作

NGINX SSI不工作

我在 NGINX 上无法使用 SSI。如果你遇到以下情况,你就会发现问题所在:http://www.bakerycamp.com/test.shtml。以下是该文件的内容:

<!--# echo hi -->

如果您在浏览器中点击此按钮,您会在内容中看到 SSI 指令 - 因此显然 NGINX 没有解释 SSI 指令。

我的 NGINX 配置文件如下所示:

server {
    listen  80;
    server_name     bakerycamp.com www.bakerycamp.com;
    access_log      /var/log/nginx/bakerycamp.access.log;
    index           index.html;
    root            /home/bakerycamp.com;
    location /      { ssi   on; }

    # Deny access to all hidden files and folders
    location ~ /\.  { access_log off; log_not_found off; deny all; }
}

我没有从源代码构建 NGINX,而是使用 apt-get 安装了它。我假设它有 SSI 模块(因为这是默认模块),但可能没有?我应该硬着头皮从源代码重建吗?有没有办法判断安装的 NGINX 是否支持 SSI,而我的配置是否错误?

答案1

在 nginx 中,SSI 指令echo用于回显变量的内容,而不是任意文本。

要测试 SSI,请尝试以下操作:

<!--# set var="test" value="Hello nginx!" -->
<!--# echo var="test" -->

文档了解更多详情。

相关内容