phun-ky Skrevet 3. januar 2006 Rapporter Del Skrevet 3. januar 2006 går dette? jeg vil hente ut serverstatus for gitt url med php. dvs, returnerer siden en 200, 404, eller 501, så vil jeg hente dette ut. noen som vet hvordan? Siter Lenke til kommentar
???????? Skrevet 3. januar 2006 Rapporter Del Skrevet 3. januar 2006 Denne informasjonen sendes i headeren, så for å få tak i denne må du lage et lite script som leser headere også. For å gjøre dette enkelt kan du bruke curl. Her er et lite eksempel: $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://www.dittdomene.com/filsomikkefinnes.html"); curl_setopt($ch, CURLOPT_HEADER, true); curl_exec($ch); curl_close($ch); Siter Lenke til kommentar
phun-ky Skrevet 3. januar 2006 Forfatter Rapporter Del Skrevet 3. januar 2006 tja, dette gjelder ikke bare filer som ikke finnes.. det blir uansett sent ut en status kode, irrelevant om det eksisterer en side.. hvis jeg har curl , hvordan henter jeg det ut ifra eksempelet du viser? og finnes det en måte å gjøre dette på uten å bruke CURL librariet? Siter Lenke til kommentar
???????? Skrevet 3. januar 2006 Rapporter Del Skrevet 3. januar 2006 Hvis du tester eksempelt over så ser du at den henter BÅDE siden og header. Finnes siden så får du opp 200 i headeren, finnes den ikke så får du opp en 404 osv. Siter Lenke til kommentar
phun-ky Skrevet 3. januar 2006 Forfatter Rapporter Del Skrevet 3. januar 2006 ah, litt klarere nå og for at jeg skal hente ut serverstatusen i en variabel så må jeg....? leser litt under CURL på php.net, men blir litt forvirret. Siter Lenke til kommentar
???????? Skrevet 3. januar 2006 Rapporter Del Skrevet 3. januar 2006 Dude, common... resten er ren programmering. Bruk CURLOPT_NOBODY for å kutte ut body, og CURLOPT_RETURNTRANSFER for å lagre til en variabel i steden for output. $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://www.vg.no"); curl_setopt($ch, CURLOPT_HEADER, true); curl_setopt($ch, CURLOPT_NOBODY, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $status = curl_exec($ch); curl_close($ch); echo $status; Her inneholder da $status kun header variabler. I første linje står det HTTP type, status# og status tekst. Det klarer du vel da å hente ut på egen hånd? Siter Lenke til kommentar
phun-ky Skrevet 3. januar 2006 Forfatter Rapporter Del Skrevet 3. januar 2006 (endret) hm, prøvde litt frem, men det viste seg ved første forsøk at jeg ikke har curl :/ dette går jeg ut i fra da hele siten er utilgjengelig nå , isjda. Endret 3. januar 2006 av phun-ky Siter Lenke til kommentar
???????? Skrevet 3. januar 2006 Rapporter Del Skrevet 3. januar 2006 Har du ikke curl? Dersom du kjører PHP lokal så er det bare å innstallere dette. Alle seriøse hoster har dette også, dersom ikke din har det så burde du bytte! Siter Lenke til kommentar
phun-ky Skrevet 4. januar 2006 Forfatter Rapporter Del Skrevet 4. januar 2006 er i snakk med dem nå. grunnen til at jeg vil ha ut server status er at jeg driver å lager en admin log i Combined Log Formatet til Apache.. dvs: 127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326 "http://www.example.com/start.html" "Mozilla/4.08 [en] (Win98; I ;Nav)" i dette formatet må/bør jeg også ha ut identd også, men det kan jeg vel se langt etter med php.. Siter Lenke til kommentar
phun-ky Skrevet 5. januar 2006 Forfatter Rapporter Del Skrevet 5. januar 2006 da jeg ikke har CURL inntil videre så prøvde jeg meg med getallheaders()... men det er jo ubrukelig mtp at den funksjonen ikke henter ut statuskoden fra http.. Siter Lenke til kommentar
Anbefalte innlegg
Bli med i samtalen
Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.