【发布时间】:2012-09-19 23:26:00
【问题描述】:
有一个托管在 Apache 上的现有应用程序。我想将一些 url(发布表单)发送到另一台服务器(不是 apache - 只是一个程序)进行一些预处理。这就是它的组织方式
1) 我在 Apache conf 上添加了一个额外的监听端口(比如 1234)
2)在端口 80 上添加了一个反向代理,以将一些 url 发送到第二台服务器,监听它自己的端口
3) 由于实际的 html 托管在 apache 上,第二台服务器在端口 1234 上从 Apache 请求所需的页面。然后它修改 html(post 表单)并提供它。它再次将发布的数据修改并发送回 apache。
我可以通过以下步骤实现上述目标 1) 在我现有的 htdocs 目录结构中 - 我创建了 2 个名为 dir1 和 dir2 的新子目录
2) 所有需要预处理的表格,我移动到目录 dir1。所有处理 post 数据的脚本,我移到 dir2。我更改其他 html 以更新路径。
3) 我添加了以下代理配置
ProxyPass /dir1 http://localhost:1234/dir1
ProxyPassReverse /dir1 http://localhost:1234/dir1
dir2 也类似。
这工作正常,但我想知道这些是否是更好的方法。 我正在寻找的主要改进是以这样一种方式进行反向代理配置,即我不会干扰托管在 htdocs 中的原始应用程序(通过将内容移动到 dir1、dir2 - 更新引用等)。有没有办法做到这一点?
【问题讨论】:
标签: apache apache2 reverse-proxy httpd.conf mod-proxy