apache - 在 Ec2 上使用 Apache Proxy 部署 NodeJS(错误?)并记录日志

标签 apache node.js amazon-ec2 logging

我有一个由两部分组成的问题

问题1

使用 Apache 作为 NodeJS 服务器的代理是否错误,因为它无法处理 Websockets。我目前正在使用 Apache 和 BOSH,我想知道使用 Node 进行部署的正确方法是什么,以便我也可以使用 websockets。

我的apache配置如下



   ServerName example.com
   ProxyPass / http://localhost:9000/
   ProxyPassReverse /  http//localhost:9000/
  
        Order allow,deny
        Allow from all
  


这种做法完全错误吗?我可以毫无问题地使用我的应用程序(作为 API 工作)。我需要尽快添加 websocket 支持,那么此配置会失败吗?

问题 2
我还想知道如何让 NodeJS 将日志写入文件。

最佳答案

1)使用Apache之类的东西来代理Node.js是错误的,最好使用Nginx之类的东西或 Node 解决方案,如 node-proxybouncy 。这是错误的,因为 Apache 会阻塞并为每个连接创建一个新线程,这与 Nginx 和 Node 完全不同。通过使用 Apache,您将消除 Node.js 为您提供的优势(数千个并发连接和低内存占用)。

2) 据我所知,最“流行”的日志库可能是 Winston .

关于apache - 在 Ec2 上使用 Apache Proxy 部署 NodeJS(错误?)并记录日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8242536/

相关文章:

Apache HTTPS 重定向证书错误

node.js - Socket.io:从一台服务器连接到另一台服务器

javascript - 如何在 Mongoose 中定义一个不同于 _id 的主键?

amazon-web-services - 了解AWS ECS中的CPU单元

amazon-ec2 - 如何在 linux - redhat 7.4 中重新启动后恢复 cfn-init 命令?

apache - 阻止人们查看目录的内容

javascript - 通过 SCP 从网页传输文件

javascript - npm:如何使用正确的依赖项创建调试和生产版本?

amazon-ec2 - Apache2 服务器和 Superset,502 代理错误,加载仪表板时从远程服务器读取错误

java - 如何使用camel将文件从源复制到目标