什么方法更好:使用Express还是nginx来提供静态文件?

47

我正在构建一个Node.js应用程序,并使用nginx作为反向代理。我的应用程序有一些静态文件需要服务和一个Socket.io服务器。

我知道可以使用Express(使用express.static中间件)直接提供静态文件。此外,我也可以直接将nginx指向我的静态文件所在的目录,以便nginx来提供服务。

那么问题来了:哪种方法更好?当使用每种方法时,可能会面临哪些优缺点呢?


@Dextication 不是重复的问题。Express.js和Node.js不是同一个东西。 - Terry Windwalker
2个回答

89

开发时使用express,主要是因为它提供的灵活性...您可以在开发期间非常容易地更改静态位置和结构

生产环境中使用nginx,因为它更快。Node.js/express适合执行逻辑,但对于服务于原始内容...没有什么能比得上nginx。您还可以获得其他功能,例如gzip、负载平衡...

尽管如此,这个问题已经在stackoverflow上被问过很多次了:请参见


18

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