【问题标题】:Apache: reverse proxy to process PHP from another serverApache:从另一台服务器处理 PHP 的反向代理
【发布时间】:2010-11-27 11:06:04
【问题描述】:

我有以下设置:

  • Plain-Server:以纯文本形式提供 php 文件
  • Proxy-Server:向 Plain-Server 请求 php 文件并进行解析。

现在我的问题是:如何配置代理服务器(一个完全可配置的 apache 2.2 和 PHP 5.3)来解释来自普通服务器的普通 php 文件?

示例:给定一个普通服务器上的小 php 脚本“hello.php”(可访问 throw http://plainserver/hello.php):

<?php
echo "Hello World";
?>

Plain-Server 只输出纯文本,不解析 php-code。

在代理服务器上,文件“hello.php”不存在。但是当从代理服务器请求 hello.php 时,它应该使用 mod_proxy(反向代理)从普通服务器获取 hello.php。它还应该解析和执行 php,只说“Hello World”。

反向代理已经在运行,但是 php 代码的执行不起作用。我尝试了 mod_filter,但无法正常工作。有什么想法吗?

【问题讨论】:

    标签: php apache reverse-proxy


    【解决方案1】:

    您可以考虑改为通过 nfs 挂载或类似于目标服务器的方式从源服务器共享 php 文件。诱使代理服务器执行您所要求的操作似乎很麻烦?

    【讨论】:

      【解决方案2】:

      我完全同意 jskaggz, 您可以构建一些可怕的技巧来构建一些获取远程页面的应用程序, 将其下载到本地文件中,然后将用户重定向到可以执行的页面... 但是有一百万个安全问题和可能出错的事情...... 你不能只是将“普通服务器”转换为 php 执行服务器并做一些传统的反向代理吗 在您的“代理服务器”上 也许使用 mod_proxy: http://www.apachetutor.org/admin/reverseproxies?

      【讨论】:

        【解决方案3】:

        在此线程的 ServerFault 版本上回答了这个问题:https://serverfault.com/a/399671/48061

        【讨论】:

          猜你喜欢
          • 2018-01-20
          • 1970-01-01
          • 1970-01-01
          • 2019-03-30
          • 2019-01-15
          • 2013-04-02
          • 2018-08-23
          • 1970-01-01
          • 2013-05-22
          相关资源
          最近更新 更多