Ho uno script PHP "A" che avvia un altro script PHP "B", che può durare fino a 5 ore. Io uso la funzione di arricciatura per quello. Ma il mio problema è che lo script "A" non mantiene la connessione allo script "B". Ho modificato max_execution_time, timeout, timeout socket, ecc ... ma non aiuta.Problemi keep-alive di connessione
Devo inviare un'intestazione allo script "B" con arricciatura o qualcosa del genere?
$curl_header[] = "Accept: text/xml,application/xml,application/xhtml+xml,text
/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
$curl_header[] = "Cache-Control: max-age=0";
$curl_header[] = "Connection: keep-alive";
$curl_header[] = "Keep-Alive: 84600";
$url = 'http://test.de/test_B.php';
$ch = curl_init();
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)');
curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $curl_header);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 300);
curl_setopt($ch, CURLOPT_TIMEOUT, 84600);
curl_setopt($ch, CURLOPT_NOSIGNAL, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, $url);
$result = curl_exec($ch);
$curl_errno = curl_errno($ch);
curl_close($ch);
`
incollare un po 'di codice? – GBD
Lo script php chiamante si interrompe? Hai messo max_execution time sullo scipt chiamante a 0? Hai anche impostato la velocità di trasferimento bassa - se ricevi una risposta parziale (inclusi spazi bianchi) e poi nulla, la CURLOPT_LOW_SPEED_TIME potrebbe dare il calcio d'inizio? – Robbie