2

我刚刚遇到了 nginx httpsubmodule。我想这可能是什么可以帮助我做到这一点。

我有静态的 HTML 页面,我想在输出 html 中使用 uri 部分。例如,我的静态 URL 是http://static.mydomain.com/pic1234.html所以在页面中我想显示单词“pic1234”。我不能使用 javascript,因为我想为静态页面生成 HTML 元数据。

这可以做到吗?如果是这样怎么办?我找不到任何例子。我发现的只是这个http://wiki.nginx.org/NginxHttpSubModule

请注意,我在为 nginx 服务器提供服务的静态文件上没有 cgi 或程序。

4

1 回答 1

8

我创建了一个简单的示例。使用此配置,nginx 将__name__html 页面中的 token 替换为请求的 html 的文件名(在本例中为“pic1234”):

nginx配置:

server {
        listen   80;
        server_name localhost;

        root D:/Development/public;
        sub_filter_once off;

        location / {
            if ($uri ~* /(\w+)\.html$) {
               set $filename "$1";
            }
            sub_filter "__name__" $filename;
            try_files $uri $uri/ ;
        }
}

D:/开发/公共/pic1234.html:

<html>
<head>
  <title>__name__</title>
</head>
<body>
  <h1>Contents of __name__:</h1>
</body>
</html>

你可以在这里找到要点

于 2012-06-18T21:36:25.083 回答