我最近在为一个 GoDaddy 托管的网站编写 PHP cURL 功能,但一直遇到烦人的 403 错误。本质上,GoDaddy 的代理服务器(他们强制您将其用于 cURL)给我一个“禁止”错误,并且没有尝试访问必要的服务器。下面是 GoDaddy 告诉您用于 cURL 事务的代码:
$URL='https://www.paypal.com'; $ch = curl_init(); echo 'URL = $URL <br>n'; curl_setopt($ch, CURLOPT_VERBOSE, 1); curl_setopt ($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE); curl_setopt ($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP); curl_setopt ($ch, CURLOPT_PROXY,'http://proxy.shr.secureserver.net:3128'); curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt ($ch, CURLOPT_URL, $URL); curl_setopt ($ch, CURLOPT_TIMEOUT, 120); $result = curl_exec ($ch); echo '<hr><br>n'; echo 'Errors: ' . curl_errno($ch) . ' ' . curl_error($ch) . '<br><br>'; echo '<hr><br>n'; curl_close ($ch); print 'result - $result'; echo '<hr><br>n';
问题是因为我在这种情况下没有使用 SSL,所以我不需要使用以下 cURL 选项:
curl_setopt($ch,CURLOPT_HTTPPROXYTUNNEL, true);
请记住,如果您从 GoDaddy 的服务器收到此错误。希望我可以用这个为别人节省很多时间。