【问题标题】:Apache mod_proxy and Node Express renders plain textApache mod_proxy 和 Node Express 呈现纯文本
【发布时间】:2015-07-03 21:45:59
【问题描述】:

我正在运行一个使用 Apache 2.2.12 作为绑定到端口 80 的默认网络服务器的网络服务器。 对于一个新项目,我需要通过端口 80 将一个 Apache 绑定域代理到在端口 4000 上运行在同一台机器上的 Node Express Server 4.7。

单独服务的 Express 进程运行良好,具有预期的结果。 意思是,当我访问 my-domain.com:4000 时,一切看起来都不错。

好的,所以我在 Apache 中设置了一个虚拟主机,它应该将 my-domain.com 代理到端口 4000 上的 Express 服务器。

我尝试代理到 localhost:4000 或 my-domain.com:4000,但 Apache 总是将 Express 响应呈现为纯文本而不是真正的 HTML。 这意味着我在浏览器中看到了 HTML 字符串,而不是解析后的网站。 当您通过检查器浏览源代码时,浏览器只会在其自己的 html-wrapper 中回显 Express 字符串,该 html-wrapper 嵌套在 pre-tag 中。

我的 Apache-Config 如下所示:

    <VirtualHost *:80>
       ServerName my-domain.com
       ProxyRequests Off
       <Proxy *>
         Order deny,allow
         Allow from all
       </Proxy>

      ProxyPass / http://localhost:4000/ 
      ProxyPassReverse / http://locahost:4000/
    </VirtualHost>

任何帮助或建议将不胜感激。 谢谢。

【问题讨论】:

    标签: node.js apache express proxy mod-proxy


    【解决方案1】:

    找到apache2.conf里面的参数

    设置:

        DefaultType text/plain
    

        DefaultType text/html
    

    解决了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-09-09
      • 2023-03-26
      • 1970-01-01
      • 2012-12-13
      • 2019-02-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多