login  Naam:   Wachtwoord: 
Registreer je!
Scripts > PHP > Snippets > remote_file_exists


Reacties op het script remote_file_exists

Offline  marten
Gepost op: 21 oktober 2007 - 21:26
Beheerder



Zijn hier geen bepaalde voorwaarden aan verbonden? Zoals safe mode uit en dat soort dingen?

Offline  Wim
Gepost op: 21 oktober 2007 - 21:30
Crew algemeen



bij mij werkt hij iig

Offline  marten
Gepost op: 21 oktober 2007 - 21:44
Beheerder



en dat is gewoon standaard geconfigureerd?

Offline  Wim
Gepost op: 21 oktober 2007 - 22:25
Crew algemeen



1) zelf geconfigureerd (linux, apache, php5): werkt
2) bij webreus.nl: werkt

Als het bij iemand niet werkt update ik het wel

Offline  Stijn
Gepost op: 21 oktober 2007 - 23:55
PHP expert



remote server, geef eens meer uitleg hierover want dit begrip hoor ik vaak maar weet niet echt wat dit is. FTP en local server ken ik maar remote ken ik niet.

Offline  Jero3n
Gepost op: 22 oktober 2007 - 07:26
PHP interesse



Volgens mij is dat dat je controleert of bestanden die staan op een andere server bestaan.  

Offline  Ibrahim
Gepost op: 22 oktober 2007 - 13:08
PHP expert



Waarom zou je dit willen ? Wat gaat iemand nou weer aan of (voorbeeld) de index.php van sitemasters bestaat, zodat je het kunt aanvallen ?

En je port parameter word niet eens gebruikt (je moet de 80 in je script wijzigen naar $port dus)

Offline  Jero3n
Gepost op: 22 oktober 2007 - 16:57
PHP interesse



Stel je maakt een site waar je kan zoeken naar mp3 bestanden op het internet.
Daarna wil je natuurlijk wel zeker zijn of ze goed zijn, en dat kan je volgens mij met dit script controleren 

Offline  Wim
Gepost op: 22 oktober 2007 - 17:10
Crew algemeen



Jero3n schreef:
Stel je maakt een site waar je kan zoeken naar mp3 bestanden op het internet.
Daarna wil je natuurlijk wel zeker zijn of ze goed zijn, en dat kan je volgens mij met dit script controleren 

of voor een afbeelding bvb (denk aan avatars, banners, ...)

Offline  Rik
Gepost op: 22 oktober 2007 - 17:41
Gouden medailleGouden medaille

Crew algemeen




Het is waarschijnlijk efficiënter om hiervoor een HEAD request te gebruiken (Link):
W3 schreef:
The HEAD method is identical to GET except that the server MUST NOT return a message-body in the response. The metainformation contained in the HTTP headers in response to a HEAD request SHOULD be identical to the information sent in response to a GET request. This method can be used for obtaining metainformation about the entity implied by the request without transferring the entity-body itself. This method is often used for testing hypertext links for validity, accessibility, and recent modification.

The response to a HEAD request MAY be cacheable in the sense that the information contained in the response MAY be used to update a previously cached entity from that resource. If the new field values indicate that the cached entity differs from the current entity (as would be indicated by a change in Content-Length, Content-MD5, ETag or Last-Modified), then the cache MUST treat the cache entry as stale.

Zeker met grote bestanden zou dat een flinke tijdswinst op moeten leveren!

Offline  ikkedikke
Gepost op: 23 oktober 2007 - 17:53
PHP expert



en wat denk je dat er met de volgende respons gebeurt:
  1. HTTP/1.1 404 Not Found
  2. Content-length: X
  3.  
  4. Na 200 mensen die deze pagina aangevraagd hebben, is deze verwijderd

Als je dan toch een reguliere expressie gebruikt, match dan gelijk de hele eerste regel.

Offline  Gerard
Gepost op: 24 oktober 2007 - 20:08
Ouwe rakker



Psycho schreef:
Waarom zou je dit willen ? Wat gaat iemand nou weer aan of (voorbeeld) de index.php van sitemasters bestaat, zodat je het kunt aanvallen ?

En je port parameter word niet eens gebruikt (je moet de 80 in je script wijzigen naar $port dus)


Om bijvoorbeeld eens over jullie tutorials te gooien voor de bijlagen, om over de downloads te gooien... om er dus de zaken uit te filteren die niet eens meer aanwezig zijn.

Offline  Thomas
Gepost op: 25 maart 2016 - 01:02
Moderator



Omdat ik altijd met ruzie heb met sockets hier een alternatief met cURL, je kunt deze naar eigen smaak aanpassen. Deze functie is in eerste instantie bedoeld om te controleren of een webpagina/website bestaat, maar je kunt deze ook heel makkelijk andere informatie laten teruggeven, cURL is heel breed. Misschien is het niet verstandig om verify_peers uit te zetten, maar tis maar net wat je insteek is. Het is bij deze functie niet de bedoeling om de authenticiteit van de website vast te stellen, enkel of deze online is of niet:
  1. <?php
  2. function isOnline($url) {
  3. $cp = curl_init();
  4. curl_setopt($cp, CURLOPT_URL, $url);
  5. curl_setopt($cp, CURLOPT_RETURNTRANSFER, true); // return response as string
  6. curl_setopt($cp, CURLOPT_HEADER, true); // include reponse header in response
  7. curl_setopt($cp, CURLOPT_NOBODY, true); // true = HEAD, false = GET
  8. curl_setopt($cp, CURLINFO_HEADER_OUT, true); // track request header so you can see what request you sent
  9.  
  10. curl_setopt($cp, CURLOPT_SSL_VERIFYPEER, false); // for HTTPS domains; ugly, but effective
  11.  
  12. $response = curl_exec($cp);
  13. // echo '<pre>'.htmlspecialchars($response, ENT_QUOTES, 'UTF-8').'</pre>';
  14. // echo curl_getinfo($cp, CURLINFO_HEADER_OUT); // inspect request header in case something went wrong
  15.  
  16. return curl_getinfo($cp, CURLINFO_HTTP_CODE) === 200;
  17. }
  18. ?>

Wat het bovenstaande in wezen doet is de HEAD van $url opvragen (net zoals bij sockets gebeurt) en vervolgens wordt gecontroleerd of de HTTP status code 200 (OK) was.


Enkel aanvullende informatie, vragen en antwoorden op vragen zijn welkom.
 
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.063s