JeuWeb - Crée ton jeu par navigateur
Gérer les headers en PHP - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Gérer les headers en PHP (/showthread.php?tid=5174)



Gérer les headers en PHP - niahoo - 17-01-2011

Hello,

J'aurais besoin d'un truc pour installer un mode de paiement, je demande ici à tout hasard puisque c'est une application web:

Je souhaiterais générer la totalité de ma page avec php, c'est à dire les headers + le HTML.

Nous utilisons un module CGI qui affiche des headers, donc ceux-ci apparaissent en haut de page. Nous sommes obligés d'utiliser PHP.

Voilà donc si vous avez une idée, c'est cool

merci


RE: Gérer les headers en PHP - Sephi-Chan - 17-01-2011

Je n'ai absolument rien compris.

(17-01-2011, 02:53 PM)niahoo a écrit : Nous utilisons un module CGI qui affiche des headers, donc ceux-ci apparaissent en haut de page. Nous sommes obligés d'utiliser PHP.

Quels headers ? Où sont-il affichés ?


Sephi-Chan


RE: Gérer les headers en PHP - NicoMSEvent - 17-01-2011

@niahoo : c'est très flou ce que tu racontes là! Tu as bu quoi? :p

Qu'entends tu par "headers"?
-l'entête de la page (bannière?)
-les préambules que tu envoies (réponse 200 en cas de non-erreur, 404 en cas de page non trouvée, ...)
-ou peut-etre les pages sécurisées via SSL (cryptage et protocole sécurisé puisque moyen de paiement)
-...

Bref, je ne comprends pas ton message...


RE: Gérer les headers en PHP - niahoo - 17-01-2011

Disons que le module CGI, quand il est appelé directement par le navigateur, envoie ceci:

Code :
Content-type: text/html
Cache-Control: no-cache, no-store
Pragma: no-cache

<HTML>
<HEAD>
...

Si j'appelle mon CGI en php avec shell_exec(), apache va fournir un truc comme ça:

Code :
HTTP/1.1 200 OK
Date: Mon, 17 Jan 2011 14:02:03 GMT
Server: Apache
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Vary: Accept-Encoding,User-Agent
Content-Encoding: gzip
Content-Length: 308
Keep-Alive: timeout=2, max=80
Connection: Keep-Alive
Content-Type: text/html; charset=utf-8

Content-type: text/html
Cache-Control: no-cache, no-store
Pragma: no-cache

<HTML>
<HEAD>

Donc, ce que j'aimerais faire, c'est que la sortie donnée par le CGI constitue toute la réponse du serveur, que apache n'envoie aucun header.


RE: Gérer les headers en PHP - srm - 17-01-2011

Tu ne peux pas Smile


RE: Gérer les headers en PHP - NicoMSEvent - 17-01-2011

Il existe, si je me souviens bien, une option dans la config apache qui va rendre "silencieux" les headers de apache.

Regarde de ce coté, a mon avis c'est une bonne piste :
http://httpd.apache.org/docs/2.0/mod/mod_headers.html

Sinon, tu peux toujours créer une application "serveur" qui remplacera apache, et ne renverra que ce que tu souhaites sur le port de ton choix (redirection du CGI PHP vers un web socket).


RE: Gérer les headers en PHP - niahoo - 17-01-2011

Je m'en doute, mais je cherche plutot une astuce vicieuse qu'une fonction PHP !


RE: Gérer les headers en PHP - Anthor - 17-01-2011

(17-01-2011, 03:51 PM)niahoo a écrit : Je m'en doute, mais je cherche plutot une astuce vicieuse qu'une fonction PHP !

Tu ne confondrais pas Apache et PHP ?!


RE: Gérer les headers en PHP - niahoo - 18-01-2011

Ben non.. mais avec le mod_php d'apache on donne accès à des fonctions sympa en php, à commencer par header(). Je m'étais dit qu'ils avaient peut-être poussé le truc plus loin.

Ou, (mais c'est marqué dans mon post donc je pige pas ta question), que quelqu'un aurait justement un trick plutot qu'un truc officiel apache/php.

edit aaah mais je répondais à oxman, j'avais pas vu le post de nico.


Nico : non pour cette appli je suis obligé de faire avec apache et php. Mais je n'avais pas du tout pensé à regarder du côté de apache. (faut dire que je le connais mal , ça fait un bail que je n'ai pas fait mumuse avec des configs apache)
Donc merci, je vais regarder un peu ce qu'on peut faire.