Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sprawdzenie czy strona odpowiada.
Forum PHP.pl > Forum > PHP
NickOver
Cześć.
Mam skrypt który sprawdza stronę pod kątem wielu czynników, mn. czy odpowiada, jaki zwraca status, czy sa na niej warningi, errory itp.
Potrzebuję sprawdzić czas odpowiedzi serwera. Niestety problem pojawia się gdy strona nie odpowiada w ogóle. To znaczy strona jest ale np. ma pętle includów. Teraz moje pytanie. Jak to obejść.
Jedynym pomysłem był sleep lecz to by oznaczało że skrypt będzie zawsze czekał te 30 sec nawet jeśli strona załaduje się wcześniej.
Żadnego ajaxa uzyć nie mogę gdyz będzie odpalane to przez konsole.
Jakieś pomysły?
Dodam że wszystko dzieje się tam curlem.
markuz
CURLOPT_TIMEOUT?
NickOver
Niestety to co podałeś nie sprawdza się ponieważ zawsze zwraca true. Potrzebuję coś co zwraca zależnie od spełnienia warunku boole.
markuz
Pokaż w jaki sposób użyłeś opcji CURLOPT_TIMEOUT
NickOver
curl_setopt($hand, CURLOPT_TIMEOUT, 30);
if(curl_exec($hand) == false)

Wczesniej ją vardumpowałem lecz niestety zawsze było true. W dokumentacji nic nie ma.
markuz
Założenie było takie, że w przypadku gdy request będzie trwał powyżej 30 sekund ma go przerwać i o tym poinformować - zgadza się?
Ustawiasz CURLOPT_TIMEOUT na 30 (jak wyżej) i dalej informujesz o błędzie:
  1. $data = curl_exec($hand);
  2. if(curl_errno($hand) > 0)
  3. echo curl_error($hand);

I wtedy w przypadku "pętli includów" otrzymasz błąd:
Cytat
Operation timed out after X milliseconds with 0 bytes received

O to chodziło? Jeżeli nie to wytłumacz jeszcze raz.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.