PHP Curl出现403错误怎么办?curl错误解决方法
程序员文章站
2022-05-01 10:34:25
...
php文档中没有详细说明,不过man curl中有详细解释,两者都是代理,proxytunnel(-p参数)允许其他协议通过http代理传输,而proxy(-x参数)则只能走http协议。所以我猜测,google baidu的服务器和curl的proxytunnel不和,所以返回403。 禁用掉上面2行代码的第一句后,curl访问恢复正常。 另外,几种操作系统下还不一样,一台MAC OSX就要显式的禁用proxytunnel才可以,curl版本:
而另外一台ubuntu则完全不受影响,怎么都能用,curl版本:
MT主机上的centos也没事,curl版本:
看来不完全是curl版本问题,MAC OSX的确与众不同啊。 还有一个原因也会导致curl返回403错误,如果设置了:
则需要紧跟着设置:
不然会因为http服务器不允许 HEAD 命令而返回403错误。 参考:Trouble with a cURL request in PHP(http://forums.devshed.com/php-development-5/trouble-with-a-curl-request-in-php-445222.html)。 MAC OSX上curl之所以特殊,也不排除是这种原因吧。 |
推荐阅读
-
nginx加php-fpm出现502 bad gateway错误的5种解决方法
-
PHP下打开phpMyAdmin出现403错误的问题解决方法
-
浅析Dos下运行php.exe,出现没有找到php_mbstring.dll 错误的解决方法
-
win7系统出现磁盘错误提示怎么办?win7电脑开机出现磁盘错误提示的解决方法
-
php运行出现Call to undefined function curl_init()的解决方法
-
Steam添加好友出现错误怎么办?Steam加好友出错的解决方法
-
php curl登陆qq后获取用户信息时证书错误
-
php出现内存位置访问无效错误问题解决方法
-
为PHP安装imagick时出现Cannot locate header file MagickWand.h错误的解决方法
-
PHP Curl出现403错误的解决办法