Discussion:
Remplacement de cURL
(trop ancien pour répondre)
Denis Beauregard
2011-01-12 22:39:48 UTC
Permalink
Bonjour,

J'aimerais savoir s'il existe une alternative à la librairie cURL.

J'ai 2 sites web et je voudrais qu'ils communiquent entre eux. En
gros :


le site A affiche un lien vers le site B, incluant un ID de session.

le site B extrait cet ID et demande au site A s'il est valide.

si valide, le site B continue la session;
si invalide, un message d'erreur est affiché.


En examinant la documentation sur php.net, j'ai bien trouvé la
librairie cURL mais elle n'est pas installée sur le serveur utilisé.
J'ai aussi essayé get_headers mais cette fonction demande la
librairie cURL. Par ailleurs, system ("wget ...") ne réussit pas
à lire une page sur l'autre site (message d'erreur : wget: unable to
resolve host address `www.***.com'). Mais je ne trouve pas cette
solution élégante de toutes façons.


Denis
Olivier Miakinen
2011-01-13 05:56:35 UTC
Permalink
Bonjour,
Post by Denis Beauregard
J'aimerais savoir s'il existe une alternative à la librairie cURL.
Dans la doc, au même niveau que cURL on trouve :
http://fr2.php.net/manual/fr/book.network.php
et :
http://fr2.php.net/manual/fr/book.sockets.php
... mais je te souhaite bon courage pour réimplémenter l'équivalent de
cURL à partir de ces fonctions de bas niveau !
Post by Denis Beauregard
elle n'est pas installée sur le serveur utilisé.
À mon avis, tu ne trouveras rien de plus simple que d'installer cURL,
aussi compliqué que ça puisse être selon ton type d'hébergement.
--
Olivier Miakinen
Denis Beauregard
2011-01-14 16:08:16 UTC
Permalink
Post by Denis Beauregard
Bonjour,
Post by Denis Beauregard
J'aimerais savoir s'il existe une alternative à la librairie cURL.
http://fr2.php.net/manual/fr/book.network.php
http://fr2.php.net/manual/fr/book.sockets.php
... mais je te souhaite bon courage pour réimplémenter l'équivalent de
cURL à partir de ces fonctions de bas niveau !
Post by Denis Beauregard
elle n'est pas installée sur le serveur utilisé.
À mon avis, tu ne trouveras rien de plus simple que d'installer cURL,
aussi compliqué que ça puisse être selon ton type d'hébergement.
J'ai pu obtenir qu'on installe cURL mais on a le même message qu'avec
wget. Selon le message de Mickael Wolff, cela indiquerait que PHP ne
peut pas communiquer directement avec l'extérieur. Je dois donc
plutôt trouver une autre stratégie pour envoyer la session vers
l'autre serveur (en fait, on a 2 serveurs externes qui doivent envoyer
la session au nouveau serveur).


Denis
Mickael Wolff
2011-01-14 14:40:34 UTC
Permalink
Post by Denis Beauregard
J'aimerais savoir s'il existe une alternative à la librairie cURL.
cURL est le nec plus ultra en tant que client web.
Post by Denis Beauregard
(message d'erreur : wget: unable to
resolve host address `www.***.com').
Ça sent mauvais. Certainement que ton hébergement est configurer pour
interdire les accès réseau depuis PHP. Si c'est bien le cas, seul le
changement d'hébergement est envisageable.
Denis Beauregard
2011-01-14 16:08:16 UTC
Permalink
Post by Mickael Wolff
Post by Denis Beauregard
J'aimerais savoir s'il existe une alternative à la librairie cURL.
cURL est le nec plus ultra en tant que client web.
Post by Denis Beauregard
(message d'erreur : wget: unable to
resolve host address `www.***.com').
Ça sent mauvais. Certainement que ton hébergement est configurer pour
interdire les accès réseau depuis PHP. Si c'est bien le cas, seul le
changement d'hébergement est envisageable.
L'hébergeur a accepté d'installer cURL. Je suppose que le problème
d'accès réseau est une question de configuration qui peut être
réglé en changeant la configuration.

J'ai le même message d'erreur avec cURL, soit dit en passant.

Quant à passer à un autre serveur, il y a un problème technique à
prévoir, soit d'héberger environ 1 To d'images (et à l'envoyer au
serveur). Pour le moment, les images ont été envoyées via un disque
dur et le serveur est à 200 km de l'utilisateur.


Denis
Mickael Wolff
2011-01-15 12:50:10 UTC
Permalink
Post by Denis Beauregard
L'hébergeur a accepté d'installer cURL. Je suppose que le problème
d'accès réseau est une question de configuration qui peut être
réglé en changeant la configuration.
Si c'est, comme je le pense désormais, en infogérence, tu devrais en
discuter directement avec eux pour connaître leur politique de sécurité,
la configuration de la résolution des noms de domaine, les accès réseau
vers l'extérieur, etc.
Denis Beauregard
2011-01-16 00:31:02 UTC
Permalink
Post by Mickael Wolff
Post by Denis Beauregard
L'hébergeur a accepté d'installer cURL. Je suppose que le problème
d'accès réseau est une question de configuration qui peut être
réglé en changeant la configuration.
Si c'est, comme je le pense désormais, en infogérence, tu devrais en
discuter directement avec eux pour connaître leur politique de sécurité,
la configuration de la résolution des noms de domaine, les accès réseau
vers l'extérieur, etc.
Le problème est maintenant réglé. Le script fonctionne comme demandé.
Je ne sais pas ce qu'ils ont fait. C'est le client qui sert
d'intermédiaire avec l'hébergeur (mais le représentant du client
travaille dans le domaine, le client étant une association de type
loi 1901) et qui fait suivre mes messages.

Donc, affaire close pour moi (en ce concerne ce forum). Il me reste à
écrire le code ! Et je n'aurai pas à tout refaire à partie des
sockets...


Denis
Thierry
2011-02-04 01:03:54 UTC
Permalink
Post by Denis Beauregard
Bonjour,
J'aimerais savoir s'il existe une alternative à la librairie cURL.
Je sais que le sujet est clos, mais au cas ou:
http://www.php.net/manual/fr/class.httprequest.php
--
Vainqueur du 1er WSOFRJCP
Olivier Miakinen
2011-02-04 17:03:20 UTC
Permalink
Post by Thierry
Post by Denis Beauregard
J'aimerais savoir s'il existe une alternative à la librairie cURL.
http://www.php.net/manual/fr/class.httprequest.php
Notons quand même que si la raison d'éviter curl était son absence du
serveur (et pas, par exemple, le fait qu'il soit de trop bas niveau),
alors HttpRequest ne pourrait pas être une alternative.

En effet :

<cit. http://www.php.net/manual/fr/class.httprequest.php#93422>
Note that [...] curl [...] is the library used by HttpRequest behind
the scenes
</cit.>

En français :

<trad.>
Noter que [...] curl [...] est la bibliothèque utilisée par HttpRequest
« dans les coulisses » (je n'ai pas trouvé de meilleure traduction)
</trad.>
Denis Beauregard
2011-02-04 22:36:43 UTC
Permalink
Post by Olivier Miakinen
Post by Thierry
Post by Denis Beauregard
J'aimerais savoir s'il existe une alternative à la librairie cURL.
http://www.php.net/manual/fr/class.httprequest.php
Notons quand même que si la raison d'éviter curl était son absence du
serveur (et pas, par exemple, le fait qu'il soit de trop bas niveau),
alors HttpRequest ne pourrait pas être une alternative.
<cit. http://www.php.net/manual/fr/class.httprequest.php#93422>
Note that [...] curl [...] is the library used by HttpRequest behind
the scenes
</cit.>
<trad.>
Noter que [...] curl [...] est la bibliothèque utilisée par HttpRequest
« dans les coulisses » (je n'ai pas trouvé de meilleure traduction)
</trad.>
L'hébergeur a de toutes façons installé curl, alors le sujet est
vraiment clos en ce qui me concerne. Mon alternative était de trouver
une autre façon de transférer une session d'un serveur à un autre
(chez un autre hébergeur).


Denis
Pascal Poncet
2011-02-04 22:36:43 UTC
Permalink
Post by Olivier Miakinen
<trad.>
Noter que [...] curl [...] est la bibliothèque utilisée par HttpRequest
« dans les coulisses » (je n'ai pas trouvé de meilleure traduction)
</trad.>
"en arrière plan" ;-)
--
Cordialement,
Pascal
Continuer la lecture sur narkive:
Loading...