在生产环境中禁用EJS缓存

5

当我的process.NODE_ENV被设置为production时,似乎EJS模板引擎会缓存所有的.html文件。因此,除非重启服务器,否则对这些文件的任何修改都不会显示。

app.engine('.html', require('ejs').__express);

有没有一种方法可以在express上禁用模板缓存?谢谢!
1个回答

15

看起来像是express内置代码的一部分,这被明确地设置为其一部分。

if (env === 'production') {
  this.enable('view cache');
}

这个函数由app.init调用,app.initcreateApplication调用,而createApplication是导出的函数,你可能使用app=express()调用它。你可以立即禁用自己的缓存:

app = express();
app.disable('view cache');

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接