0

似乎陷入了一些困境。据我所知,PHP 或 Apache 没有任何变化,但是已经运行了将近 6 个月的代码今天下午 2 点停止运行。

代码是:

function ls_record($prospectid,$campid){
            $api_post = "method=NewProspect&prospect_id=".$prospectid."&campaign_id=".$campid;

            $ch = curl_init();

            curl_setopt($ch, CURLOPT_FRESH_CONNECT, TRUE);
            curl_setopt($ch, CURLOPT_HEADER, FALSE);
            curl_setopt($ch, CURLOPT_POST, TRUE);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $api_post);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
            curl_setopt($ch, CURLOPT_URL, "http://XXXXX/XXXXXX/store.php");
            $x = print_r(curl_exec($ch), TRUE);
            return $x;
    }

它返回NULL, I tried usingfile_get_contents() which also returnsNULL`。我检查了 Apache 错误日志,但什么也没看到……我需要一些帮助。

4

3 回答 3

0

您可以访问服务器的命令行吗?可能是目的地以某种方式阻止了您。

如果你有命令行访问权限,试试这个

wget http://XXXXX/XXXXXX/store.php

那至少应该返回一些东西(如果不是标题)

于 2013-11-01T23:51:21.917 回答
0

使用curl_getinfo检查您的 curl 执行状态,可能您尝试从中提取内容的服务器需要您的 curl 来设置用户代理,某些站点检查用户代理以阻止不需要的 curl 访问。

下面是我用来将 curl 伪装成桌面 chrome 浏览器的用户代理。

curl_setopt($ch,CURLOPT_USERAGENT,' Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36');
于 2013-11-02T00:11:28.367 回答
0

由于网速低,我在服务器上遇到了同样的问题。互联网速度下降了一段时间, curl 需要很长时间才能执行,所以它返回一个超时错误。几分钟后,它工作正常,服务器上没有任何更改。

于 2016-09-14T11:27:44.617 回答