小编Fat*_*öse的帖子

GnuTLS recv 错误 (-54):pull 函数出错

我有一个 PHP 抓取器,可以在我的本地完美运行。但是当我将它上传到我的 VPS (Ubuntu 16.04) 时,它无法从网站获取数据。相反,它显示此错误消息:

“卷曲:(56)GnuTLS 接收错误(-54):拉函数中的错误”

我更新了 Openssl、Curl、GnuTLS 仍然没有运气。尝试从命令行执行 CURL,它显示相同的错误。它应该与 CURL /GnuTLS 有关。我看到有些人在使用 Git 时有相同的错误消息并修复了它,但该解决方案在我的情况下不起作用。有什么办法可以解决吗?

这是我用来从网站获取数据的 PHP 函数:

function get_html($url)
{
    $agent= 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.92 Mobile Safari/537.36';

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_VERBOSE, true);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_USERAGENT, $agent);

    curl_setopt($ch, CURLOPT_HTTPHEADER, array(
        'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
        'Accept-Language: q=0.9,en-US;q=0.8,en;q=0.7',
        'Connection: keep-alive'
 ));


    curl_setopt($ch, CURLOPT_URL,$url);
    $pageContent = curl_exec($ch);

    curl_close($ch);

    return $pageContent;
}
Run Code Online (Sandbox Code Playgroud)

提前致谢。

php curl gnutls php-curl

7
推荐指数
0
解决办法
4049
查看次数

标签 统计

curl ×1

gnutls ×1

php ×1

php-curl ×1