Node.js 用于生产的Nodejs Web服务器

Node.js 用于生产的Nodejs Web服务器,node.js,webserver,nowjs-sockets,Node.js,Webserver,Nowjs Sockets,对常见问题的一点更新。从Nodejs v0.6.5的当前版本开始,在生产环境中作为Web服务器运行是否安全?我真的想跳过使用nginx作为代理的步骤。我要用Expressjs,nowjs,gzippo。nginx还不支持websockets,通过ssl设置socket.io有点困难。除了更好地服务静态文件之外,nginx还有其他优势吗 对这件事有什么建议吗?如果可以作为Web服务器运行,那么还有其他模块值得简化吗?老实说,除了提供静态文件之外,我没有看到任何重要的好处(尽管Nginx可能有更多特

对常见问题的一点更新。从Nodejs v0.6.5的当前版本开始,在生产环境中作为Web服务器运行是否安全?我真的想跳过使用nginx作为代理的步骤。我要用Expressjs,nowjs,gzippo。nginx还不支持websockets,通过ssl设置socket.io有点困难。除了更好地服务静态文件之外,nginx还有其他优势吗


对这件事有什么建议吗?如果可以作为Web服务器运行,那么还有其他模块值得简化吗?

老实说,除了提供静态文件之外,我没有看到任何重要的好处(尽管Nginx可能有更多特定于服务器的扩展名)

此外,您可能希望使用或进行代理,并在前端使用服务器端模块


编辑:据我所知,如果没有Nginx,您也不会是第一个使用Node的人,其他人也在使用它。

Nginx除了提供静态文件之外的其他好处

  • 您可以让它动态压缩或加载一个.gz文件,即使需要非压缩文件
  • 您可以缓存生成的任何内容,从而减少对node.js的回调

  • 您可以将其路由到节点应用程序服务器集群
  • 还有很多其他的好东西

使用nginx虽然不是必需的,但运行node时前面没有任何东西是完全可以的。

查看nginx 1.1.5中的开发分支,根据我的经验,http代理模块中的http 1.1有一个错误修复,如果您想在ssl后面运行socket.io,则需要将传输限制为仅使用xhr轮询和jsonp轮询。这些传输在每个浏览器中都可以工作,socket.io甚至可以处理跨域问题。我们的其他运输工具都有问题。好处是,如果您使用这两种传输,您可以使用nginx或其他代理。“您可以将其路由到节点应用程序服务器集群”<您也可以使用bouncy或节点http代理进行此操作。您还可以使用Node和Nginx可以做的其他事情进行缓存。如果不是Nginx所能做到的一切,Node可以做到最多。节点只是事件I/O。但在应用程序代码启动和处理它之前让这些事情发生是有益的。对于集群,我只是在一个盒子之外说话。让nginx集群拥有多个服务器非常容易。是的,node也可以这样做,但您必须编写所有的处理、检查等+1,因为您可以在node中完成操作,但这并不意味着您应该在node中完成所有操作!(用您选择的语言替换node)这是个好消息:)因为它现在对我来说简化了很多。这些模块是拼图中最后缺失的部分。谢谢