mam skrypt który za pomocą CURL loguje sie do hurtowni a następnie w pętli przetwarza każdą stronę i wyciągam z niej potrzebne dane (ceny/ilosci produktów).
Otóż mam taki problem.
Gdy odpalam skrypt w przeglądarce to działa dobrze, wykonuje się kilka godzin (przetwarza 6000 produktów) i jest ok.
Natomiast jak uruchamia się poprzez CRON to kończy się po kilku minutach (przetwarza tylko 100-150 produktów)
Macie jakieś pomysły co może być przyczyną ?
ustawienia:
serwer mydevil
max_execution_time = 25000
na wszelki wypadek wrzucam część skryptu, może coś tu potrzeba dorzucić ?
w logach z błędami php nic nie znalazłem.
Testuje to ponad tydzień z różnymi kombinacjami i już nie mam pomysłów
<?php require('../simplehtmldom/simple_html_dom.php'); //logowanie + zapis cookies $username = 'user'; $password = 'pass'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'https://xxxxx.pl/logowanie.php'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, 'login='.$username.'&haslo='.$password); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_ENCODING, 'gzip, deflate'); curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookies.txt'); $output = curl_exec($ch); if (curl_errno($ch)) { } $info = curl_getinfo($ch); curl_close($ch); { $ch2 = curl_init(); curl_setopt($ch2, CURLOPT_URL, 'https://xxxxx.pl/produkt.php?pid='.$numer_id); curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch2, CURLOPT_CUSTOMREQUEST, 'GET'); curl_setopt($ch2, CURLOPT_ENCODING, 'gzip, deflate'); curl_setopt($ch2, CURLOPT_COOKIEFILE, 'cookies.txt'); curl_setopt($ch2, CURLOPT_FILE, $file); $output = curl_exec($ch2); if (curl_errno($ch2)) { } $info = curl_getinfo($ch2); curl_close($ch2); //pobrana strona wrzucona do biblioteki simplehtmldom celem wyjecia potrzebnych danych z drzewa DOM $html = file_get_html("temp.html"); if($html){ //odczyt z drzewa DOM potrzebnych danych i zapis do Mysql.... }