Express:设置maxAge后,单个文件的SetHeader'Cache-Control'

节点新手在这里。 下面的代码导致所有文件都接收到响应头“Cache-Control public,max-age = 31536000”。 我希望索引的最大年龄为0.我尝试了几种不同的方法,但其根源似乎是我的一个更基本的误解。

为什么下面的res.setHeader行不生效(以便我能理解我的误解),以及确保Index.html不被caching的正确方法是什么?

var express = require('express'), gzipStatic = require('connect-gzip-static'), app = express(), port= process.env.PORT || 3030, cacheAge = 365 * 24 * 60 * 60 * 1000; app.use(gzipStatic(__dirname + '/public', { maxAge: cacheAge })); app.get('/', function(req, res) { res.setHeader('Cache-Control', 'max-age=0'); res.sendFile('index.html'); }); 

尝试在app.use()中设置标题:

 app.use(function (req, res, next) { ...... res.setHeader('Cache-Control', 'public, max-age=31557600'); // 1 year ...... })