通过 PHP Curl 连接到某个第三方服务会引发此错误:
CURL error: Received HTTP code 403 from proxy after CONNECT
代理上的 Apache 错误日志抛出了以下信息:
Connect to remote machine blocked returned by remote.service.com:59315
我想知道如何让它工作!
代理配置:
<VirtualHost *:8001>
ProxyRequests On
<Proxy *>
Order deny,allow
Deny from all
Allow from 10.
</Proxy>
ProxyVia Off
<IfModule mod_headers.c>
Header set P3P "policyref=\"/w3c/p3p.xml\", CP=\"NOI DSP COR NID CUR ADM DEV OUR BUS\""
</IfModule>
AllowCONNECT 443 1129 7934 8080 993
</VirtualHost>
域名IP是被允许的,从这个日志中可以看出:
[error] [client 10.234.9.46] proxy: Connect to remote machine blocked returned by
答案1
为代理端口添加 AllowCONNECT 有效。Apache 2.2 不需要此功能,但 Apache 2.4 需要此功能。对于我们来说,它是从 IBM HTTP Server 8.5.5 到 IBM HTTP Server 9。
之前的评论我几乎赞同,因为那还不起作用。你可能认为他们可能会从 Stack Overflow 上获得声誉点数。花了一些时间才找到这个答案,所以谢谢。