HEADER |
Entête |
---|---|
PHP 4+ |
Syntaxe
void header($string); |
void header($string,$replace); |
void header($string,$replace, $http_response_code); |
Paramètres
Nom | Description | |
---|---|---|
$string | Ce paramètre permet d'indiquer un paramètre d'entête à envoyé. Voici quelques paramètres possibles : | |
Valeur | Description | |
"Cache-Control: no-cache, must-revalidate" | Cette valeur permet d'indiquer que la page ne doit pas être gardé dans un cache du navigateur car elle est dynamique et sujet à beaucoup de changement imprévisible. | |
"Connection: Close" | Cette valeur permet d'indiquer que la connexion réseau à cette page est actuellement fermé. | |
"Content-Disposition: attachment; filename=monfichier.ext;" | Cette valeur permet d'indiquer le nom du fichier envoyer dans cette page. | |
"Content-Length: taillefichier" | Cette valeur permet d'indiquer la taille du fichier envoyer dans cette page. | |
"Content-Transfer-Encoding: binary" | Cette valeur permet d'indiquer que la page a un encodage binaire. | |
"Content-type: application/acad" | Cette valeur permet d'indiquer que la page retourner est un fichier AutoCAD | |
"Content-type: application/applefile" | Cette valeur permet d'indiquer que la page retourner est un fichier AppleFile | |
"Content-type: application/astound" | Cette valeur permet d'indiquer que la page retourner est un fichier Astound | |
"Content-type: application/clariscad" | Cette valeur permet d'indiquer que la page retourner est un fichier ClarisCAD | |
"Content-Type: application/csv-tab-delimited-table" | Cette valeur permet d'indiquer que la page retourner est un fichier de tableur CSV (chiffrier électronique) | |
"Content-type: application/drafting" | Cette valeur permet d'indiquer que la page retourner est un fichier MATRA Prelude drafting | |
"Content-type: application/dsptype" | Cette valeur permet d'indiquer que la page retourner est un fichier TSP | |
"Content-type: application/dxf" | Cette valeur permet d'indiquer que la page retourner est un fichier AutoCAD | |
"Content-type: application/futuresplash" | Cette valeur permet d'indiquer que la page retourner est un fichier Flash Futuresplash | |
"Content-type: application/gzip" | Cette valeur permet d'indiquer que la page retourner est un fichier GNU Zip | |
"Content-type: application/hdf" | Cette valeur permet d'indiquer que la page retourner est un fichier de données | |
"Content-type: application/i-deas" | Cette valeur permet d'indiquer que la page retourner est un fichier SDRC I-deas | |
"Content-type: application/iges" | Cette valeur permet d'indiquer que la page retourner est un fichier de format d'échange CAO IGES | |
"Content-type: application/listenup" | Cette valeur permet d'indiquer que la page retourner est un fichier Listenup | |
"Content-type: application/mac-binhex40" | Cette valeur permet d'indiquer que la page retourner est un fichier binaires Macintosh | |
"Content-type: application/mbedlet" | Cette valeur permet d'indiquer que la page retourner est un fichier Mbedlet | |
"Content-type: application/mif" | Cette valeur permet d'indiquer que la page retourner est un fichier FrameMaker Interchange Format | |
"Content-type: application/msexcel" | Cette valeur permet d'indiquer que la page retourner est un fichier Microsoft Excel | |
"Content-type: application/mshelp" | Cette valeur permet d'indiquer que la page retourner est un fichier d'aide Microsoft Windows | |
"Content-type: application/mspowerpoint" | Cette valeur permet d'indiquer que la page retourner est un fichier Microsoft Powerpoint | |
"Content-type: application/msword" | Cette valeur permet d'indiquer que la page retourner est un fichier Microsoft Word | |
"Content-type: application/octet-stream" | Cette valeur permet d'indiquer que la page retourner est un fichier binaires non interprétés | |
"Content-type: application/oda" | Cette valeur permet d'indiquer que la page retourner est un fichier ODA | |
"Content-type: application/pdf" | Cette valeur permet d'indiquer que la page retourner est un fichier Adobe Acrobat | |
"Content-type: application/postscript" | Cette valeur permet d'indiquer que la page retourner est un fichier PostScript | |
"Content-type: application/pro_eng" | Cette valeur permet d'indiquer que la page retourner est un fichier ProEngineer | |
"Content-type: application/rtc" | Cette valeur permet d'indiquer que la page retourner est un fichier RTC | |
"Content-type: application/rtf" | Cette valeur permet d'indiquer que la page retourner est un fichier de format de texte enrichi | |
"Content-type: application/set" | Cette valeur permet d'indiquer que la page retourner est un fichier CAO SET | |
"Content-type: application/sla" | Cette valeur permet d'indiquer que la page retourner est un fichier stéréolithographie | |
"Content-type: application/solids" | Cette valeur permet d'indiquer que la page retourner est un fichier MATRA Solids | |
"Content-type: application/step" | Cette valeur permet d'indiquer que la page retourner est un fichier de données STEP | |
"Content-type: application/studiom" | Cette valeur permet d'indiquer que la page retourner est un fichier Studiom | |
"Content-type: application/toolbook" | Cette valeur permet d'indiquer que la page retourner est un fichier Toolbook | |
"Content-type: application/vda" | Cette valeur permet d'indiquer que la page retourner est un fichier de surface | |
"Content-type: application/vnd.wap.wmlc" | Cette valeur permet d'indiquer que la page retourner est un fichier WMLC (WAP) | |
"Content-type: application/vnd.wap.wmlscriptc" | Cette valeur permet d'indiquer que la page retourner est un fichier script C WML (WAP) | |
"Content-type: application/vocaltec-media-desc" | Cette valeur permet d'indiquer que la page retourner est un fichier Vocaltec Mediadesc | |
"Content-type: application/vocaltec-media-file" | Cette valeur permet d'indiquer que la page retourner est un fichier Vocaltec Media | |
"Content-type: application/x-authorware-bin" | Cette valeur permet d'indiquer que la page retourner est un Macromedia Authorware | |
"Content-type: application/x-authorware-map" | Cette valeur permet d'indiquer que la page retourner est un Macromedia Authorware | |
"Content-type: application/x-authorware-seg" | Cette valeur permet d'indiquer que la page retourner est un Macromedia Authorware | |
"Content-type: application/x-bcpio" | Cette valeur permet d'indiquer que la page retourner est un fichier BCPIO | |
"Content-type: application/x-bittorrent" | Cette valeur permet d'indiquer que la page retourner est un Bittorrent | |
"Content-type: application/x-compress" | Cette valeur permet d'indiquer que la page retourner est un fichier compressé | |
"Content-type: application/x-cpio" | Cette valeur permet d'indiquer que la page retourner est un CPIO binaire | |
"Content-type: application/x-cpio" | Cette valeur permet d'indiquer que la page retourner est un CPIO Posix | |
"Content-type: application/x-csh" | Cette valeur permet d'indiquer que la page retourner est un Script C-Shell (UNIX) | |
"Content-type: application/x-director" | Cette valeur permet d'indiquer que la page retourner est un fichier répertoire | |
"Content-type: application/x-dvi" | Cette valeur permet d'indiquer que la page retourner est un fichiers texte dvi | |
"Content-type: application/x-envoy" | Cette valeur permet d'indiquer que la page retourner est un fichier Envoy | |
"Content-type: application/x-gtar" | Cette valeur permet d'indiquer que la page retourner est un Tar GNU | |
"Content-type: application/x-httpd-php" | Cette valeur permet d'indiquer que la page retourner est un fichier script PHP | |
"Content-type: application/x-javascript" | Cette valeur permet d'indiquer que la page retourner est un fichier JavaScript côté serveur | |
"Content-type: application/x-latex" | Cette valeur permet d'indiquer que la page retourner est un fichier d'application d'un source LaTEX | |
"Content-type: application/x-macbinary" | Cette valeur permet d'indiquer que la page retourner est un fichier d'application binaires Macintosh | |
"Content-type: application/x-mif" | Cette valeur permet d'indiquer que la page retourner est un fichier d'application Framemaker | |
"Content-type: application/xml" | Cette valeur permet d'indiquer que la page retourner est un fichier d'application XML. | |
"Content-type: application/xml-external-parsed-entity" | Cette valeur permet d'indiquer que la page retourner est un fichier d'application XML à l'analyse syntaxique externe | |
"Content-type: application/xml-dtd" | Cette valeur permet d'indiquer que la page retourner est un fichier d'application XML DTD | |
"Content-type: application/x-netcdf" | Cette valeur permet d'indiquer que la page retourner est un fichier netCDF | |
"Content-type: application/x-nschat" | Cette valeur permet d'indiquer que la page retourner est un fichier NS Chat | |
"Content-type: application/x-sh" | Cette valeur permet d'indiquer que la page retourner est un fichier Bourne Shell | |
"Content-type: application/x-shar" | Cette valeur permet d'indiquer que la page retourner est un fichier d'archives Shell | |
"Content-type: application/x-shockwave-flash" | Cette valeur permet d'indiquer que la page retourner est un fichier Flash Shockwave | |
"Content-type: application/x-sprite" | Cette valeur permet d'indiquer que la page retourner est un fichier Sprite | |
"Content-type: application/x-stuffit" | Cette valeur permet d'indiquer que la page retourner est un fichier Stuffit | |
"Content-type: application/x-supercard" | Cette valeur permet d'indiquer que la page retourner est un fichier Supercard | |
"Content-type: application/x-sv4cpio" | Cette valeur permet d'indiquer que la page retourner est un fichier CPIO SVR4n | |
"Content-type: application/x-sv4crc" | Cette valeur permet d'indiquer que la page retourner est un fichier CPIO SVR4 avec CRC | |
"Content-type: application/x-tar" | Cette valeur permet d'indiquer que la page retourner est un fichier compressé tar | |
"Content-type: application/x-tcl" | Cette valeur permet d'indiquer que la page retourner est un fichier script Tcl | |
"Content-type: application/x-tex" | Cette valeur permet d'indiquer que la page retourner est un fichier Tex | |
"Content-type: application/x-texinfo" | Cette valeur permet d'indiquer que la page retourner est un fichier eMacs | |
"Content-type: application/x-troff" | Cette valeur permet d'indiquer que la page retourner est un fichier Troff | |
"Content-type: application/x-troff-man" | Cette valeur permet d'indiquer que la page retourner est un fichier Troff/macro man | |
"Content-type: application/x-troff-me" | Cette valeur permet d'indiquer que la page retourner est un fichier Troff/macro ME | |
"Content-type: application/x-troff-ms" | Cette valeur permet d'indiquer que la page retourner est un fichier Troff/macro MS | |
"Content-type: application/x-ustar" | Cette valeur permet d'indiquer que la page retourner est un fichier compressé tar Posix | |
"Content-type: application/x-wais-source" | Cette valeur permet d'indiquer que la page retourner est un fichier Source Wais | |
"Content-type: application/x-www-form-urlencoded" | Cette valeur permet d'indiquer que la page retourner est un fichier de données de formulaire HTML à CGI | |
"Content-type: application/zip" | Cette valeur permet d'indiquer que la page retourner est un fichier compressé ZIP | |
"Content-type: audio/basic" | Cette valeur permet d'indiquer que la page retourner est un fichier audio basiques | |
"Content-type: audio/echospeech" | Cette valeur permet d'indiquer que la page retourner est un fichier Echospeed | |
"Content-type: audio/tsplayer" | Cette valeur permet d'indiquer que la page retourner est un fichier TS-Player | |
"Content-type: audio/voxware" | Cette valeur permet d'indiquer que la page retourner est un fichier Vox | |
"Content-type: audio/x-aiff" | Cette valeur permet d'indiquer que la page retourner est un fichier audio AIFF | |
"Content-type: audio/x-dspeeh" | Cette valeur permet d'indiquer que la page retourner est un fichier parole | |
"Content-type: audio/x-midi" | Cette valeur permet d'indiquer que la page retourner est un fichier MIDI | |
"Content-type: audio/x-mpeg" | Cette valeur permet d'indiquer que la page retourner est un fichier MPEG | |
"Content-type: audio/x-pn-realaudio" | Cette valeur permet d'indiquer que la page retourner est un fichier RealAudio | |
"Content-type: audio/x-pn-realaudio-plugin" | Cette valeur permet d'indiquer que la page retourner est un fichier plugin RealAudio | |
"Content-type: audio/x-qt-stream" | Cette valeur permet d'indiquer que la page retourner est un fichier QuickTime Audio | |
"Content-type: audio/x-wav" | Cette valeur permet d'indiquer que la page retourner est un fichier audio Wave | |
"Content-type: drawing/x-dwf" | Cette valeur permet d'indiquer que la page retourner est un fichier Drawing | |
"Content-type: image/cis-cod" | Cette valeur permet d'indiquer que la page retourner est un fichier CIS-Cod | |
"Content-type: image/fif" | Cette valeur permet d'indiquer que la page retourner est un fichier FIF | |
"Content-type: image/gif" | Cette valeur permet d'indiquer que la page retourner est un fichier d'image gif | |
"Content-type: image/ief" | Cette valeur permet d'indiquer que la page retourner est un fichier d'image exchange format | |
"Content-type: image/jpeg" | Cette valeur permet d'indiquer que la page retourner est un fichier d'image Jpeg | |
"Content-type: image/tiff" | Cette valeur permet d'indiquer que la page retourner est un fichier d'image Tiff | |
"Content-type: image/vasa" | Cette valeur permet d'indiquer que la page retourner est un fichier Vasa | |
"Content-type: image/vnd.wap.wbmp" | Cette valeur permet d'indiquer que la page retourner est un fichier Bitmap (WAP) | |
"Content-type: image/x-cmu-raster" | Cette valeur permet d'indiquer que la page retourner est un fichier Raster cmu | |
"Content-type: image/x-freehand" | Cette valeur permet d'indiquer que la page retourner est un fichier Freehand | |
"Content-type: image/x-portable-anymap" | Cette valeur permet d'indiquer que la page retourner est un fichier Anymap PBM | |
"Content-type: image/x-portable-bitmap" | Cette valeur permet d'indiquer que la page retourner est un fichier Bitmap PBM | |
"Content-type: image/x-portable-graymap" | Cette valeur permet d'indiquer que la page retourner est un fichier Graymap PBM | |
"Content-type: image/x-portable-pixmap" | Cette valeur permet d'indiquer que la page retourner est un fichier Pixmap PBM | |
"Content-type: image/x-rgb" | Cette valeur permet d'indiquer que la page retourner est un fichier d'image RGB | |
"Content-type: image/x-xbitmap" | Cette valeur permet d'indiquer que la page retourner est un fichier d'image XBM | |
"Content-type: image/x-xpixmap" | Cette valeur permet d'indiquer que la page retourner est un fichier d'image XPM | |
"Content-type: image/x-xwindowdump" | Cette valeur permet d'indiquer que la page retourner est un fichier d'image dump X-Windows | |
"Content-type: message/external-body" | Cette valeur permet d'indiquer que la page retourner est un fichier de nouvelle avec contenu externe | |
"Content-type: message/http" | Cette valeur permet d'indiquer que la page retourner est un fichier de nouvelle à entête HTTP | |
"Content-type: message/news" | Cette valeur permet d'indiquer que la page retourner est un fichier de nouvelle de Newsgroup | |
"Content-type: message/partial" | Cette valeur permet d'indiquer que la page retourner est un fichier de nouvelle avec contenu partiel | |
"Content-type: message/rfc822" | Cette valeur permet d'indiquer que la page retourner est un fichier de nouvelle d'après RFC 1822 | |
"Content-type: model/vrml" | Cette valeur permet d'indiquer que la page retourner est un fichier de visualisation de mondes virtuels | |
"Content-type: multipart/alternative" | Cette valeur permet d'indiquer que la page retourner est un fichier de données composites mélangées | |
"Content-type: multipart/byteranges" | Cette valeur permet d'indiquer que la page retourner est un fichier de données composites avec mentions d'octets | |
"Content-type: multipart/digest" | Cette valeur permet d'indiquer que la page retourner est un fichier de données composites / choix | |
"Content-type: multipart/encrypted" | Cette valeur permet d'indiquer que la page retourner est un fichier de données composites cryptées | |
"Content-type: multipart/form-data" | Cette valeur permet d'indiquer que la page retourner est un fichier de données composites de formulaire HTML | |
"Content-type: multipart/mixed" | Cette valeur permet d'indiquer que la page retourner est un fichier de données composites mélangées | |
"Content-type: multipart/parallel" | Cette valeur permet d'indiquer que la page retourner est un fichier de données composites parallèles | |
"Content-type: multipart/related" | Cette valeur permet d'indiquer que la page retourner est un fichier de données composites / liées | |
"Content-type: multipart/report" | Cette valeur permet d'indiquer que la page retourner est un fichier de données composites / rapport | |
"Content-type: multipart/signed" | Cette valeur permet d'indiquer que la page retourner est un fichier de données composites / signées | |
"Content-type: multipart/voice-message" | Cette valeur permet d'indiquer que la page retourner est un fichier de données composites / message vocal | |
"Content-type: multipart/x-gzip" | Cette valeur permet d'indiquer que la page retourner est un fichier d'archive GNU zip | |
"Content-type: multipart/x-zip" | Cette valeur permet d'indiquer que la page retourner est un fichier d'archive zip | |
"Content-type: text/comma-separated-values" | Cette valeur permet d'indiquer que la page retourner est un fichier de données séparées par des virgules | |
"Content-type: text/css" | Cette valeur permet d'indiquer que la page retourner est un fichier de feuilles de style CSS | |
"Content-type: text/html" | Cette valeur permet d'indiquer que la page retourner est un fichier HTML | |
"Content-type: text/javascript" | Cette valeur permet d'indiquer que la page retourner est un fichier JavaScript | |
"Content-type: text/plain" | Cette valeur permet d'indiquer que la page retourner est un fichier texte sans mise en forme | |
"Content-type: text/richtext" | Cette valeur permet d'indiquer que la page retourner est un fichier texte enrichis | |
"Content-type: text/tab-separated-value" | Cette valeur permet d'indiquer que la page retourner est un fichier texte avec séparation des valeurs | |
"Content-type: text/vnd.abc" | Cette valeur permet d'indiquer que la page retourner est un fichier Surge Runtime Environment | |
"Content-type: text/vnd.wap.wml" | Cette valeur permet d'indiquer que la page retourner est un fichier WML (WAP) | |
"Content-type: text/vnd.wap.wmlscript" | Cette valeur permet d'indiquer que la page retourner est un fichier script WML (WAP) | |
"Content-type: text/x-setext" | Cette valeur permet d'indiquer que la page retourner est un fichier texte Struct | |
"Content-type: text/x-sgml" | Cette valeur permet d'indiquer que la page retourner est un fichier SGML | |
"Content-type: text/x-speech" | Cette valeur permet d'indiquer que la page retourner est un fichier Speech | |
"Content-type: text/xml" | Cette valeur permet d'indiquer que la page retourner est un fichier de texte XML | |
"Content-type: text/xml-external-parsed-entity" | Cette valeur permet d'indiquer que la page retourner est un fichier XML à l'analyse syntaxique externe | |
"Content-type: video/animaflex" | Cette valeur permet d'indiquer que la page retourner est un fichier de vidéos AnimaFlex | |
"Content-type: video/mpeg" | Cette valeur permet d'indiquer que la page retourner est un fichier de vidéo MPEG | |
"Content-type: video/msvideo" | Cette valeur permet d'indiquer que la page retourner est un fichier de vidéos de Microsoft Windows | |
"Content-type: video/quicktime" | Cette valeur permet d'indiquer que la page retourner est un fichier de vidéo QuickTime | |
"Content-type: video/vnd.vivo" | Cette valeur permet d'indiquer que la page retourner est un fichier Vivo | |
"Content-type: video/x-msvideo" | Cette valeur permet d'indiquer que la page retourner est un fichier Microsoft AVI | |
"Content-type: video/x-sgi-movie" | Cette valeur permet d'indiquer que la page retourner est un fichier vidéo MoviePlayer | |
"Content-type: workbook/formulaone" | Cette valeur permet d'indiquer que la page retourner est un fichier FormulaOne | |
"Content-type: x-world/x-3dmf" | Cette valeur permet d'indiquer que la page retourner est un fichier DMF | |
"Content-type: x-world/x-vrml" | Cette valeur permet d'indiquer que la page retourner est un fichier VRML | |
"HTTP/1.0 204 No Response" | Cette valeur permet d'indiquer que la page ne retourne pas de réponse. | |
"HTTP/1.1 301 Moved Permanently" | Cette valeur permet d'indiquer que la page est définitivement déplacé. Idéalement, faudra faire un autre appel de l'instruction «header» avec un paramètre «Location» afin d'indiquer la bonne page. | |
"HTTP/1.0 404 Not Found" | Cette valeur permet d'indiquer que la page n'a pas été trouvé pas le navigateur Web. | |
"HTTP/1.1 503 Service Temporarily Unavailable" | Cette valeur permet d'indiquer que la page est temporairement indisponible. | |
"Location: http://www.gladir.com/" | Cette valeur permet d'indiquer une page Web vers laquelle il faut effectué une redirection. | |
"refresh: 0; url=\"http://www.gladir.com\"" | Cette valeur permet d'effectuer une redirection immédiat vers le lien indiquer. ATTENTION ! Si vous effectuez des redirections vers des sites comme «ad.doubleclick.net», lequel utilise des points-virgules avec leur lien URL, il ne fonctionnera pas correctement sous Internet Explorer, mais uniquement sous FireFox. Pour résoudre le problème, il est obligatoire de mettre le lien URL entre des guillemets. | |
"Retry-After: secondes" | Cette valeur permet d'indiquer que la page Web doit être rechargé dans le nombre de secondes spécifiés. | |
"Set-Cookie: track=identificateur" | Cette valeur permet d'indiquer que l'identificateur de traçage du «Cookie» courant. | |
"WWW-Authenticate: NTLM" | Cette valeur permet d'indiquer qu'une authentification NTLM est requise. | |
... | ... | |
$replace | Ce paramètre permet d'indiquer s'il faut remplacer un paramètre d'entête identique précédemment transmis. | |
$http_response_code | Ce paramètre permet d'indiquer le code de réponse HTTP à transmettre au navigateur Web. Voici quelques uns des codes : | |
Valeur | Description | |
100 | Cette valeur permet d'indiquer que la page continue. | |
101 | Cette valeur permet d'indiquer que le protocole à changé. | |
102 | Cette valeur permet d'indiquer que la page en cours de génération. | |
200 | Cette valeur permet d'indiquer que la page en correctement chargé. | |
201 | Cette valeur permet d'indiquer que la page est créer. | |
202 | Cette valeur permet d'indiquer que la page est accepté. | |
203 | Cette valeur permet d'indiquer que la page contient des informations non-autorisé. | |
204 | Cette valeur permet d'indiquer que la page ne contient rien. | |
205 | Cette valeur permet d'indiquer que le contenu de la page est réinitialisé. | |
206 | Cette valeur permet d'indiquer que la page à un contenu partiel. | |
207 | Cette valeur permet d'indiquer que la page a de multiple état. | |
300 | Cette valeur permet d'indiquer que la page a des choix multiples. | |
301 | Cette valeur permet d'indiquer que la page est déplacé définitivement. | |
302 | Cette valeur permet d'indiquer que la page est trouvé. | |
303 | Cette valeur permet d'indiquer de voir l'autre page. | |
304 | Cette valeur permet d'indiquer la page n'a pas été modifié. | |
305 | Cette valeur permet d'indiquer la page utilise un proxy. | |
306 | Cette valeur permet d'indiquer la page n'est pas utilisé. | |
307 | Cette valeur permet d'indiquer la page effectue une redirection temporaire. | |
400 | Cette valeur permet d'indiquer une mauvaise requête est envoyé à la page. | |
401 | Cette valeur permet d'indiquer qu'une autorisation est requise pour cette page. | |
402 | Cette valeur permet d'indiquer qu'un paiement est requise pour cette page. | |
403 | Cette valeur permet d'indiquer que l'accès à cette page est refusé. | |
404 | Cette valeur permet d'indiquer que la page est introuvable. | |
405 | Cette valeur permet d'indiquer que la méthode n'est pas alloué pour cette page. | |
406 | Cette valeur permet d'indiquer que la méthode n'est pas acceptable pour cette page. | |
407 | Cette valeur permet d'indiquer que la page exige une authentification au proxy. | |
408 | Cette valeur permet d'indiquer que le délai est expiré pour la page. | |
409 | Cette valeur permet d'indiquer qu'un conflit à lieu avec la page. | |
410 | Cette valeur permet d'indiquer que la page est partie. | |
411 | Cette valeur permet d'indiquer qu'une longueur est requise pour la page. | |
412 | Cette valeur permet d'indiquer qu'une précondition a échoué pour la page demandé. | |
413 | Cette valeur permet d'indiquer qu'une requête à une entité trop large pour la page. | |
414 | Cette valeur permet d'indiquer qu'une requête-URI est trop large pour la page. | |
415 | Cette valeur permet d'indiquer le type de support de média n'est pas supporté par la page. | |
416 | Cette valeur permet d'indiquer que le rang de la requête n'est pas satisfait pour la page. | |
417 | Cette valeur permet d'indiquer un échec de la page. | |
418 | Cette valeur n'est pas utilisé. | |
419 | Cette valeur n'est pas utilisé. | |
420 | Cette valeur n'est pas utilisé. | |
421 | Cette valeur n'est pas utilisé. | |
422 | Cette valeur permet d'indiquer entité ne pouvant être un processus d'une page. | |
423 | Cette valeur permet d'indiquer que la page est verrouillé. | |
424 | Cette valeur permet d'indiquer un échec de dépendance pour la page. | |
425 | Cette valeur permet d'indiquer qu'il n'y a pas de code pour la page. | |
426 | Cette valeur permet d'indiquer qu'une mise-à-jour est requise pour la page. | |
500 | Cette valeur permet d'indiquer une erreur interne dans le serveur. | |
501 | Cette valeur permet d'indiquer que la méthode n'est pas implanté. | |
502 | Cette valeur permet d'indiquer qu'il y a une mauvaise route réseau. | |
503 | Cette valeur permet d'indiquer que le serveur est temporairement non-disponible. | |
504 | Cette valeur permet d'indiquer que le délai est dépassé sur le chemin du réseau. | |
505 | Cette valeur permet d'indiquer que la version HTTP n'est pas supporté. | |
506 | Cette valeur permet d'indiquer que la variante doit aussi être négocié. | |
507 | Cette valeur permet d'indiquer que la capacité d'entreposage est insuffisante. | |
508 | Cette valeur permet n'est pas utilisé. | |
509 | Cette valeur n'est pas utilisé. | |
510 | Cette valeur permet d'indiquer la page n'est pas étendu. | |
... | ... |
Description
Cette fonction permet de définir les paramètres de l'entête HTTP avant l'envoi du contenu au navigateur Web.
Remarques
- Il est souvent préférable d'utiliser des variables de SESSION ($_SESSION) pour transmettre des informations d'une page à l'autre plutôt que des GET et/ou des POST avec une redirection.
- 301 : Une redirection permanente ne contient pas de date d'expiration et si vous effectuez une redirection avec cette valeur, elle peut être conservée indéfiniment dans le navigateur et non pas 30 jours comme la rumeur le prétend. Cependant, la durée de vie avant que le navigateur revérifie peut varier d'un navigateur à l'autre, et cela ne correspond pas à une règle officielle. Ainsi, la norme «RFC 4437» propose une balise «<!ELEMENT redirect-lifetime (permanent | temporary)>» mais il ne semble pas appliqué par la plupart des navigateurs.
- Symfony 1: Il est préférable d'utiliser sfAction::redirect sous Symfony 1 car elle effectue une résolution des routes indiquer dans le fichier routing.yml automatique.
- Cache Poisoning : Vous devriez utiliser la fonction «header» avec un maximum de précision et voir même certaines validations supplémentaires, car il existe une technique de hacking appelé «Cache Poisoning» permettant à l'attaquant, par une technique de fractionnement de la réponse HTTP, de faire en sorte que les utilisateurs Web reçoivent du contenu malveillant.
Bonnes pratiques
Sur de nombreux serveurs Web, si vous envoyez des informations d'affichage après une redirection, un plantage se produit avec un message d'erreur «Warning: Cannot modify header information - headers already sent by», il continue l'exécution ou ignore carrément la redirection ou effectue la redirection avec des comportements étranges. On se retrouve donc avec la mauvaise situation suivante :
Pour résoudre le problème, on ajoute l'instruction «exit» immédiatement après l'instruction «header» :
Il faut également s'assurer, dans la mesure du possible, de ne pas afficher non plus de message avant la redirection. De plus, une mauvaise programmation provoquant plein de message de «Warning» pourra également provoquer un échec de la redirection.
Exemples
Voici un exemple permettant d'être redirigé automatiquement sur le site «www.gladir.com» :
Essayer maintenant !
- <?php
- header( "refresh: 0; url=\"http://www.gladir.com\"" );
- ?>
Voici un exemple permettant d'effectuer une redirection et d'effectuer un «POST» en même temps. Voici la page effectuant la redirection à proprement parlé :
Essayer maintenant !
- <?php
- function redirect_post($url, array $data) {
- $fp = @fopen($url, 'rb', false, stream_context_create(array('http' => array('method' => 'POST','content' => http_build_query($data)))));
- if ($fp) {
- echo @stream_get_contents($fp);
- } else {
- echo "Impossible de rediriger...";
- }
- exit();
- }
-
- redirect_post("http://localhost/readpost.php?x=1&b=2", array("var1"=> "1", "var2" => "2", "var3" => "C"));
- ?>
ensuite, la page sera rediriger vers la page «readpost.php» ayant le contenu suivant :
Essayer maintenant !
on obtiendra le résultat suivant :
var1:1var2:2
var3:C
Voir également
Articles - Pertes de session sous PHP
Articles - URL (Uniform Resource Locator)
Articles - Redirection Web
Articles - Types de MIME
Articles - Comparatif des méthodes «POST» ou «GET» ?
Références
PHP 4 - Guide du développeur, Edition First Interactive, Blake Schwendiman, 2002, ISBN: 2-84427-283-5, page 464