2012-04-11 65 views
10

我希望apache转发请求到一台服务器到另一台服务器。下面是完整的scnario:Apache转发请求到另一台服务器

有3台服务器:

  1. 机A - IP:AAAA - 客户端机器,希望有调用API机器C.
  2. 机器B - IP:BBBB - 中级机器
  3. Machine C - IP:CCCC - 托管API的机器。

API的URL:http://机器C:/V1 /客户/ ....

连接状态:

  1. 机A - >机B:远程登录上80端口 - 好
  2. 计算机B - >计算机C:远程登录端口8000 - 好
  3. 机A - >计算机C:远程登录端口8000 - 坏

理想情况下,从机器A我想调用机器C上的API,但由于我没有A和C之间的直接n/w连接,所以必须采用此路由。

所以我想成立的Apache服务器上机器B这样的: 计算机A,调用API - 的http:// 机B:80/V1 /客户/ ....然后将其转发给机器C的端口8000. C服务请求并将响应发送回A.

该任务可能很简单,但我对这个apache很陌生,如果有人可以请告诉我解决方案,它会对我明天的截止日期非常好:)

谢谢!

回答

10

经过一番研究和谷歌搜索进一步能够做到这一点。这是我做过什么 - 可能是有益的那些谁是面临同样的问题:

在机器B的httpd.conf文件中添加以下内容:

的ProxyPass/V1 /客户CCCC:8000/V1 /客户

ProxyPassReverse/V1 /客户CCCC:8000/V1 /客户

从客户(机A),如果呼叫被制成BBBB/V1 /客户,那么这将是 转发到CCCC

因此:8000/v1/customer

ProxyPass需要mod_proxy模块。

+0

请您自己回答!我与CherryPy有完全相同的问题。 – 2013-01-13 20:37:29

相关问题