【问题标题】:Deploy Node.js app with Apache porting issue部署带有 Apache 移植问题的 Node.js 应用程序
【发布时间】:2016-05-22 23:50:15
【问题描述】:

我正在部署一个简单的 node.js 应用程序,并且我正在使用 apache 作为 Web 服务器。我正确安装了 apache,我在 httpd.conf 文件中唯一更改的是 DocumentRoot 和 Directory。我将这些指向我的节点应用程序的目录。我重新启动了 apache,当我转到公共 IP 时,我只看到 apache 测试页面??但是,如果我使用端口扩展名 (:8000) 卷曲私有 IP 地址,它将返回我的应用程序的索引页面。如何让 apache 将请求发送到正确的端口?

编辑:如果我只 curl 私有 IP 地址,它会返回 Apache 测试页面的 html。

【问题讨论】:

    标签: node.js apache centos redhat


    【解决方案1】:

    您将请求从 Apache 代理到 Node,而不是尝试让 Apache 直接调用 node 命令(就像您使用 PHP 所做的那样)。

    你可以用这样的配置来做到这一点:

    ProxyPass /app http://127.0.0.1:8000
    

    这意味着如果您转到https://www.example.com/app,那么您将调用您的节点服务。

    您当然可以使用 ProxyPass / 所以一切都转到您的节点服务,但大多数人发现最好让网络服务器处理静态页面和资源(因为它擅长于此)然后让节点返回动态内容 - 要么直接返回 HTML 或仅返回 JSON 格式的数据和使用该数据的前端 javascript。

    【讨论】:

      猜你喜欢
      • 2016-07-24
      • 1970-01-01
      • 2014-07-11
      • 2016-12-05
      • 1970-01-01
      • 1970-01-01
      • 2019-06-20
      • 2013-05-25
      • 1970-01-01
      相关资源
      最近更新 更多