Niouzes.org  

Précédent   Niouzes.org > Forum > Newsgroup fr.comp.lang.* Forum > Newsgroup fr.comp.lang.php
S'inscrire FAQ Membres Calendrier Recherche Messages du jour Marquer les forums comme lus



Réponse

 

LinkBack Outils de la discussion Modes d'affichage
  #1 (permalink)  
Vieux 07/07/2008, 13h36
Mickaël Wolff
 
Messages: n/a
Par défaut Re: Tester l'existence d'un site

Pascale a écrit :

> On commence par faire :
>
> $ch=curl_init($url);
> puis on récupère le code erreur éventuel avec
>
> curl_errno($ch);
>
> Mais en fait non, j'ai rien compris ? Si...?


curl_init créé une ressource, et l'initialise avec le paramètre s'il
lui est fournit.

curl_setopt te permet de configurer ta ressource.

Il faut savoir que, par défaut, curl va télécharger la page distante
et renvoyer le contenu vers ton navigateur. Donc si tu veux seulement
vérifier que la page existe, tu peux utiliser le code suivant :

function check_url($url)
{
$socket = curl_init($url) ;
curl_setopt($socket, CURLOPT_NOBODY, true) ;
$message = curl_exec($socket)
? curl_getinfo($socket, CURLINFO_HTTP_CODE)
: curl_error($socket) ;

curl_close($socket) ;
return $message ;
}

À noter que le message renvoyé n'est pas forcément une erreur.

Je profites du thread pour soulever un point concernant curl et la
sécurité. En fournissant directement l'URL de l'utilisateur Ã*** Curl, n'y
a-t-il pas potentiellement un problème de sécurité ?

--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org
Réponse avec citation
Alt Today
Advertising
Google Adsense
 
This advertising will not be shown
in this way to registered members.
Register your free account today
and become a member on
Niouzes.org
Standard Sponsored Links

  #2 (permalink)  
Vieux 07/07/2008, 18h05
Mickaël Wolff
 
Messages: n/a
Par défaut Re: Tester l'existence d'un site

Patrick Mevzek a écrit :
> Le Mon, 07 Jul 2008 12:36:13 +0000, Mickaël Wolff a écrit:
>> En fournissant directement l'URL de l'utilisateur Ã*** Curl, n'y
>> a-t-il pas potentiellement un problème de sécurité ?

>
> Si, multiples même.


J'ai un peu fouillé, et c'est en fait un énorme trou si on ne fait pas
attention. Merci pour les infos.

Pascale, le bout de code que j'ai fournit Ã*** titre d'illustration n'est
pas sécurisé. Il ne faut pas l'utiliser en production. Je regarde pour
faire une classe mieux fagotée, je la posterais ici.

--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org
Réponse avec citation
  #3 (permalink)  
Vieux 07/07/2008, 19h55
Mickaël Wolff
 
Messages: n/a
Par défaut Re: Tester l'existence d'un site

Olivier Miakinen a écrit :

> Tu aurais un lien (si possible traduit en français) ?


C'est vrai que moi aussi ça m'aurait aider. Cependant, en essayant
l'url file:///etc/passwd dans curl_init, même en configurant l'option
CURLOPT_NOBODY Ã*** true le contenu du fichier est affiché :-D


> Je n'ai pas bien compris ce que ça fait (il faut dire que je ne suis pas
> allé voir ce qu'était LWP::UserAgent dont il dérive).


Ce que je pense qu'il faut en retirer, c'est la limitation du timeout
(pour éviter les redirections éternelles), l'exclusion d'hôtes sensibles
afin d'éviter de détourner la fonctionnalité pour sonder le voisinage
réseau, etc. Tiens, si ça ce trouve, en utilisant la fonctionnalité
telnet, on peut éventuellement utiliser ça pour faire du spam :-D (oui,
c'est une obsession).


> Oui, bien sûr. Mais dans ce cas, quel genre de contrôle ferais-tu sur
> l'URL qui pourrait minimiser les risques lors de la connexion par CURL ?


Vérifier que c'est une URL désignant une ressource HTTP est un bon
début en fait. C'est d'ailleurs ce que je suis en train de corriger dans
mes devs. Je n'avais pas réalisé la puissance de cURL.

--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org
Réponse avec citation
 
Réponse
Tags: , ,



Outils de la discussion
Modes d'affichage

Règles de messages
Vous pouvez ouvrir de nouvelles discussions : nonoui
Vous pouvez envoyer des réponses : nonoui
Vous pouvez insérer des pièces jointes : nonoui
Vous pouvez modifier vos messages : nonoui

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Discussions similaires

Discussion Auteur Forum Réponses Dernier message
Re: Tester l'existence d'une fonte Thomas vO Newsgroup fr.comp.text.tex 5 13/06/2008 12h50
Re: [MSDOS] Tester l'existence d'un disque amovible Sergio Newsgroup fr.comp.os.ms-windows 0 05/04/2008 08h44
Tester l'existence d'un onglet dans un classeur Jacques Newsgroup microsoft.public.fr.excel 5 16/02/2008 16h08
Re: tester l'existence d'un répertoire Gilles MOUGNOZ Newsgroup microsoft.public.fr.access 0 28/01/2008 10h48
Tester l'existence d'un champ à l'execution Geo55 Newsgroup fr.comp.lang.pascal 6 11/10/2006 13h55


Fuseau horaire GMT. Il est actuellement 09h30.

Italiano - German - English - Español


Édité par : vBulletin® version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0 © 2007, Crawlability, Inc. Tous droits réservés.
Version française #13 par l'association vBulletin francophone


Politique - Droit - Philosophie - Football - Medicine - Française - Bricolage - Photo - Mac Os X - Divers - Physique - Jardinage
Mecanique - Moto - Photographie - Rail - Route - Aviation - Cinema - Linux - Psychanalyse - Finance - Enigmes - Rugby
Environnement - Histoire - Programmes TV - Education - Travail - Voyages - Windows - Immobilier - Cuisine
Windows XP - Excel - Word - Outlook - Access - Internet Explorer - Office - Vista

Page generated in 0,33593 seconds with 11 queries