我正在寻找有关如何做到这一点的建议。我想让服务器位于客户端和实际服务器之间。例如:
Client -> Proxy Type Server -> Web Server.
因此作为回报,Web服务器会将结果传递给代理服务器,然后代理服务器将结果返回给客户端。例如:
Client <- Proxy Type Server <- Web Server
这是一个让生活更轻松的图表:
如果只是简单的GET请求不是问题,但我不确定如果客户端发布数据它将如何工作。我希望有人可以就此提出建议。谢谢你,如果可以的话!
答案 0 :(得分:1)
我不确定您的问题是什么...如果您在客户端和应用程序服务器之间设置了代理服务器,那么它就是:代理服务器。因此,它会将请求代理到应用程序服务器,就像您在图表中所示。如果客户端POST
的数据到代理,代理服务器将POST
与应用程序服务器相同的数据并将响应返回给客户端...
您是否在询问 如何设置此类内容?
编辑:我将在这里猜测......
如果只是简单的GET请求不是问题,但我不确定如果客户端发布数据它将如何工作
你的意思是客户端是POST
一个PHP或Ruby脚本在“代理服务器”上,而不是像实际的代理服务器那样鱿鱼还是阿帕奇的mod_proxy
?如果是这样,您是否在询问如何使用PHP将POST数据发送到应用程序服务器?如果这是你的问题,这就是答案:
<?php
$application_server = '1.2.3.4'; // replace with IP or hostname of application server
$uri = $_SERVER['REQUEST_URI']; // you may need to change this, not sure from your question.
$curl = curl_init("http://{$application_server}{$uri}");
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl,CURLOPT_POSTFIELDS,$_POST);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
$data = curl_exec($curl);
// do something with $data, transform it however you want...
echo $data;