0
我有一个.gz文件位于/public/files/update.tar.gz
。我想通过路线/ud/files/update.tar.gz
为其下载。我想做它作为静态内容和路由(因为一些文件将有一个动态生成的路线)。nodejs服务预压缩的gz文件
我试过静态下(nginx的至极,也许实际达到甚至更好):
main.use('/ud/files', express.static(path.join(__dirname, 'public/files')));
在这里,我得到的错误:
Error: No default engine was specified and no extension was provided. at new View (bla bla)
并在/动态URL UD /文件/ tX2r8z/update.tar.gz:
router.get('/ud/files/:s/:file', function(req, res) {
checkSg(req.params.s, function(err) {
if(!err) {
res.download("/public/files/" + req.params.file, req.params.file); 'also tried sendFile()
} else {
res.send(404);
}
});
});
在这里,我得到两个错误toghether:
Error: Forbidden at SendStream.error (bla bla)
Error: No default engine was specified and no extension was provided. at new View (bla bla)
任何想法?
你为什么要用nginx和nodejs?两种(nodejs在某些情况下可能会更好)完成同样的事情。 – Eduard
我发现nginx做的事情更简单:平衡,服务Apache,静态和nodejs应用程序,HTML缓存,日志记录...所以你不必在node中实现所有这些东西,只需配置nginx :) – Miquel