CURL ERROR: Recv failure: Verbindung von Peer zurückgesetzt - PHP Curl

Ich habe diesen seltsamen Fehler,CURL ERROR: Recv failure: Verbindung von Peer zurückgesetzt

Dies ist, wie es passiert, wenn ich keine Verbindung zum Server hergestellt habe und plötzlich versuche, eine Verbindung zum Server über CURL in PHP herzustellen, erhalte ich den Fehler. Wenn ich das CURL-Skript erneut ausführe, verschwindet der Fehler und funktioniert die ganze Zeit gut. Wenn ich den Remote-Server für etwa 30 Minuten im Leerlauf lasse oder den Remote-Server neu starte und erneut versuche, eine Verbindung herzustellen, wird der Fehler erneut angezeigt. Es scheint also, dass die Verbindung inaktiv ist und der Server plötzlich aufwacht und dann funktioniert und dann wieder in den Ruhemodus wechselt.

So sieht mein CURL-Skript aus.

<code>$url = Yii::app()->params['pdfUrl'];
            $body = 'title='.urlencode($title).'&client_url='.Yii::app()->params['pdfClientURL'].'&client_id='.Yii::app()->params['pdfClientID'].'&content='.urlencode(htmlentities($content));

            $c = curl_init ($url);
            $body = array(
                "client_url"=>Yii::app()->params['pdfClientURL'],
                "client_id"=>Yii::app()->params['pdfClientID'],
                "title"=>urlencode($title),
                "content"=>urlencode($content)

            );
            foreach($body as $key=>$value) { $body_str .= $key.'='.$value.'&'; }
                rtrim($body_str,'&');

            curl_setopt ($c, CURLOPT_POST, true);
            curl_setopt ($c, CURLOPT_POSTFIELDS, $body_str);
            curl_setopt ($c, CURLOPT_RETURNTRANSFER, true);
            curl_setopt ($c, CURLOPT_CONNECTTIMEOUT , 0);
            curl_setopt ($c, CURLOPT_TIMEOUT  , 20);

            $pdf = curl_exec ($c);
            $errorCode = curl_getinfo($c, CURLINFO_HTTP_CODE);
            $curlInfo = curl_getinfo($c);
            $curlError = curl_error($c);

            curl_close ($c);
</code>

Ich habe keine Ideen und Lösungen mehr, bitte helfen Sie, ich werde es zu schätzen wissen !!!

Wenn ich die Ausgabe verbose, um zu sehen, was mit passiert

<code>curl_setopt ($c, CURLOPT_VERBOSE, TRUE);
curl_setopt($c, CURLOPT_STDERR, $fp); 
</code>

Ich bekomme folgendes

<code>* About to connect() to 196.41.139.168 port 80 (#0)
*   Trying 196.x.x.x... * connected
* Connected to 196.x.x.x (196.x.x.x) port 80 (#0)
> POST /serve/?r=pdf/generatePdf HTTP/1.1
Host: 196.x.x.x
Accept: */*
Content-Length: 7115
Content-Type: application/x-www-form-urlencoded
Expect: 100-continue

* Recv failure: Connection reset by peer
* Closing connection #0
012 20:23:49 GMT
< Server: Apache/2.2.15 (CentOS)
< X-Powered-By: PHP/5.3.3
< Connection: close
< Transfer-Encoding: chunked
< Content-Type: text/html; charset=UTF-8
< 
* Closing connection #0
</code>

Ich habe im folgenden Zeh den Standardheader entfernt und trotzdem kein Glück:

<code>curl_setopt ($c, CURLOPT_HTTPHEADER, array( 'Expect:' ) );

> Accept: */* Content-Length: 8414 Content-Type:
> application/x-www-form-urlencoded
> 
> * Recv failure: Connection reset by peer
> * Closing connection #0 r: Apache/2.2.15 (CentOS) < X-Powered-By: PHP/5.3.3 < Connection: close < Transfer-Encoding: chunked <
> Content-Type: text/html; charset=UTF-8 < 
> * Closing connection #0
</code>

Antworten auf die Frage(6)

Ihre Antwort auf die Frage