Modifier une requête http en php

cs_nanano7 Messages postés 9 Date d'inscription dimanche 17 décembre 2006 Statut Membre Dernière intervention 23 mai 2008 - 14 mars 2008 à 17:26
jmm241 Messages postés 3 Date d'inscription mardi 28 février 2006 Statut Membre Dernière intervention 19 janvier 2012 - 19 nov. 2009 à 22:06
bonjour

J'essaie d'écrire un module afin qu'il modifie une requête HTTP qu'il
reçoit en entrée puis la renvoyer vers un serveur externe. Je veux lire la requête 
et la modifier pour
l'envoyer vers une adresse url quelconque...Avez-vous une idée??

merci d'avance

10 réponses

neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
14 mars 2008 à 17:41
Salut,

Je ne suis pas sûr que tu puisses lire une requête HTTP reçue avec PHP, puisqu'elle est reçue par le serveur web (Apache, IIS, etc). C'est lui qui traite les requêtes HTTP, certainement pas PHP.
PHP peut, tout au plus, envoyer des requêtes sur un serveur et traiter la réponse.
Maintenant, il y a "peut-être" quelque chose qui permet à Apache (ou IIS ou autre) de transmettre à PHP l'intégralité de la requête HTTP reçue (une extension ou autre), mais j'ai comme un doute...

<hr size="2" width="100%" />Neige
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
15 mars 2008 à 07:10
Hello,

le problème c'est que php intervient APRES la requête HTTP. Logique.
Mais rien ne t'empêche, sur une page appelée, de récupérer la chaîne de requête, de la parser, et de rediriger ensuite. Je ne saisis pas bien où tu bloques en fait ?
 
0
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
15 mars 2008 à 18:19
Salut,

Au temps pour moi... Il existe bien une fonction PHP qui permet de récupérer les entêtes HTTP envoyés à Apache, mais à la seule condition que PHP soit installé en tant que module Apache (et pas utilisé en CGI).

http://fr.php.net/manual/fr/function.apache-request-headers.php

<hr size="2" width="100%" />Neige
0
dvdstory Messages postés 192 Date d'inscription dimanche 23 janvier 2005 Statut Membre Dernière intervention 10 août 2009
16 mars 2008 à 00:48
Regarde le résultat de

echo fopen(php://input,'r+');

Cela devrait t'intérresser.
Si sa t'intéresse tu pe remplacer input par output.
Jte laisse faire des recherche sur google pour plus de détails.

GRUNENBERGER Benoît
www.egrunenberger.com
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_nanano7 Messages postés 9 Date d'inscription dimanche 17 décembre 2006 Statut Membre Dernière intervention 23 mai 2008
17 mars 2008 à 12:37
merci pour vos aide, mais précisement, je cherche comment modifier l'user agent avec un script php.

s'il n'y a pas de solution, c'est parce qu'il n'y a pas de problème
0
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
17 mars 2008 à 12:49
header('User-Agent: Mon Navigateur a moi version 1267654.8 beta 3 rc17 ');

<hr size="2" width="100%" />Neige
0
cs_nanano7 Messages postés 9 Date d'inscription dimanche 17 décembre 2006 Statut Membre Dernière intervention 23 mai 2008
17 mars 2008 à 14:52
j'ai essayé mais ça marche pas
0
dvdstory Messages postés 192 Date d'inscription dimanche 23 janvier 2005 Statut Membre Dernière intervention 10 août 2009
19 mars 2008 à 14:09
La solution de [auteur/NEIGEDHIVER/924195.aspx neigedhiver] devrait fonctionner, en tout cas c'est ce que j'aurais fait. Il faut peut être te préscisé que tu dois utiliser cette fonction tout au début de ton fichier car tu ne doit rien envoyer au navigateur avant d'utiliser


header('User-Agent: Mon Navigateur a moi version 1267654.8 beta 3 rc17 ');http://www.UnrealNetwork.net
0
kimymet Messages postés 2 Date d'inscription dimanche 9 décembre 2007 Statut Membre Dernière intervention 14 septembre 2009
14 sept. 2009 à 05:00
Salut,
Y'a t'il un moyen pour générer ses propres requete http avec un outils ou un script ??
Merci
0
jmm241 Messages postés 3 Date d'inscription mardi 28 février 2006 Statut Membre Dernière intervention 19 janvier 2012
19 nov. 2009 à 22:06
 Prime_Time

Une URL peut etre accedee a partir d'un script PHP comme un simple fichier, par exemple
$dataresult =file("http://www.foudujeu.com/Resultats/") ;
la chaine de resultat contient tout le html de la page recue
du serveur. Mais pour que votre script devienne une sorte de relais de requete entre les parametres recus par votre script et les parametres a passer au serveur auquel vous sous-traitez..
(c'est peut-etre le cas des sites fédérateurs de requetes)
il faudra compléter l'url avec une liste adequate de parametres avec leurs valeurs, du genre :
$url = $urlsite."?param1=".$value1."¶m2=".$value2 ;
$dataresult =file( $url );

Vous devrez
* soit donner le resultat brut recu :
echo $dataresult;

* soit extraire les résultats utiles puis les renvoyer vers votre client
0
Rejoignez-nous