我希望apache将请求转发到一台服务器到另一台服务器。这是完整的scnario:
有3个服务器:
- 机器A - IP:A.A.A.A - 想要在机器C上调用API的客户端机器。
- 机器B - IP:B.B.B.B - 中间机器
- 机器C - IP:C.C.C.C - 托管API的机器。
API URL:http://机器c:8000/ V1 /客户/ ....
连接状态:
- 机器A - >机器B:端口80上的Telnet - 很好
- 机器B - >机器C:端口8000上的Telnet - 很好
- 机器A - >机器C:端口8000上的Telnet - 坏
理想情况下,从机器A我想在机器C上调用API,但由于我在A和C之间没有直接的n / w连接,我必须采用这种方式。
所以我想在机器B上设置apache服务器,这样:
从机器A,进行API调用 -
HTTP:// 机器B:80/ v1 / customer / ....然后在端口8000上将其转发到Machine C.
C提供请求并将响应发送回A.
任务可能很简单,但我是这个apache的新手,如果有人能告诉我解决方案,那对我明天的截止日期来说会很棒:)
谢谢!
经过一些研究和谷歌搜索进一步能够做到这一点。这就是我所做的 - 可能对那些面临同样问题的人有所帮助:
在机器B的httpd.conf文件中添加了以下内容:
ProxyPass / v1 / customer C.C.C.C:8000 / v1 / customer
ProxyPassReverse / v1 / customer C.C.C.C:8000 / v1 / customer
因此,从客户端(机器A),如果呼叫是作为B.B.B.B / v1 /客户,那么它将是
转发给C.C.C.C:8000 / v1 / customer
ProxyPass需要mod_proxy模块。
经过一些研究和谷歌搜索进一步能够做到这一点。这就是我所做的 - 可能对那些面临同样问题的人有所帮助:
在机器B的httpd.conf文件中添加了以下内容:
ProxyPass / v1 / customer C.C.C.C:8000 / v1 / customer
ProxyPassReverse / v1 / customer C.C.C.C:8000 / v1 / customer
因此,从客户端(机器A),如果呼叫是作为B.B.B.B / v1 /客户,那么它将是
转发给C.C.C.C:8000 / v1 / customer
ProxyPass需要mod_proxy模块。