2012-02-21 104 views
1

我的组织已订阅称为Language Grid的语言Web服务基础结构,该服务使用basic access authentication进行服务调用。我们聘请承包商为我们开发使用这些语言服务的应用程序。问题是我们不想给用户和密码访问服务网格给承包商,我们想要监视(记录)访问。通过HTTP基本认证访问的Web服务的代理

因此,我们在考虑建立一个“代理” Web服务请求,这样承包人可以进行测试,如下图所示:

enter image description here

我在想,最简单的一个这样做的方法是让承包商通过位于服务器上的脚本(PHP或其他)发出请求,并将此请求转发到服务网格。这样的脚本可以看起来像:

$auth = base64_encode("$user:$pass"); 
$url = $_POST['url'] 

$request = new HTTPRequest($url, HTTP_METH_POST); 
$request->setPostFields($_POST) 
$request->send(); 
$response = $request->getResponseBody(); 
echo $response; 

是否有一个更好,更安全的方式来做到这一点?例如通过使用Apache代理mod功能?

+0

我会考虑[Squid](http://www.squid-cache.org/)这样的东西。 mod_proxy应该也可以。 – quickshiftin 2012-02-21 08:47:31

回答

1

上经过验证的代理设置W/mod_proxy的一个有用的线索:

Setting up an Apache Proxy with Authentication

看起来像一个答案表明鱿鱼以及。尽管我已经使用了它,但它确实归结于您最熟悉的内容以及您愿意花费多少时间。 Squid是一个专门构建的代理,但您可以更快速地使用Apache进行设置。

+0

看起来像最好的解决方案。我正在考虑使用Apache代理,但学习Squid永远不会太晚:) – 2012-02-21 09:11:45