2017-03-02 131 views
2

我正在使用cakephp 3.3.10内置http-client用于向其他服务器上的脚本发出GET/POST请求。我想通过代理服务器重新路由请求,以便目标服务器上的请求似乎来自我的代理服务器IP地址。Cakephp 3 HTTP客户端代理400错误请求

对于代理服务器,我已经设置了一台Ubuntu 14.04机器并在其上安装了squid。完成基本设置并尝试在浏览器中进行设置,并且没有任何问题。现在

,按照CakePHP的3菜谱,我使用下面的语法使用代理我的GET请求,

$http = new Client(); 
$http->get('http://98:87:76:65/test.php', [], ['proxy' => ['proxy' => '12:23:34:45:3128'] 

这个请求是给400错误的请求错误。 我尝试使用带有-x(代理标志)卷曲相同的请求,它是工作没有任何问题:

curl -x 12:23:34:45:3128 http://98:87:76:65/test.php 

我怎样才能在cakephp3 HTTP客户端使用的代理服务器设置。

任何帮助将不胜感激!

+0

您使用哪个CakePHP版本('vendor/cakephp/cakephp/VERSION.txt'中的最后一行)? – ndm

+0

@ndm,它是3.3.10。 –

+1

尝试升级到至少最新的3.3.x,然后,一个可能相关的问题已经修复为3.3.13:** https://github.com/cakephp/cakephp/pull/10039** – ndm

回答

0

刚刚升级cakephp版本从3.3.10到3.3.15(作曲家更新完成所有工作),并且问题已经修复

感谢@NDM作为升级建议。