Header

Aus php bar
Wechseln zu: Navigation, Suche

Mit der header() Funktion kann man vom Server aus dem Client verschiedene Arten von HTTP-Header-Informationen senden, die in der RFC 2616 (Hypertext Transfer Protocol 1.1) festgelegt sind.

Die verschiedenen Header-Informationen kann man in verschiedene Rubriken einteilen. Header wie Content-Type geben Metainformationen über die Seite zurück (Entity), wohingegen WWW-Authenticate zum Beispiel den Benutzer auffordert Benutzername und Passwort einzugeben (Response).

Beispiele

Nachfolgend einige praktische Anwendungen der header() Funktion.

Umleitung

Entsprechend der RFC-2616 muss eine komplette URL - inklusive http:// - übergeben werden. Viele Browser kommen zwar auch mit relativen URLs klar, Standardkompatibilität ist aber jedenfalls besser.

1 // Umleitung auf http://www.phpbar.de/
2 'Location: http://www.phpbar.de/' );


siehe auch: Umleitung

Authentifizierung

1 span class="st0">'PHP_AUTH_USER'] ) )
2 {
3     // Zeige Login-Maske
4 'WWW-Authenticate: Basic realm="Geschlossener Bereich"''HTTP/1.0 401 Unauthorized' );
5     // Text der bei Abbruch angezeigt wird
6 'Bitte geben Sie Benutzername und Passwort ein um Zutritt zu erhalten'// Gebe Benutzername und Passwort aus
7 'Hallo ''PHP_AUTH_USER'] . ', Ihr Passwort lautet: ''PHP_AUTH_PW'];
8 }


siehe auch: HTTP-Authentifizierung

Download

Download einer Datei, die sich bereits auf dem Server befindet.

1 span class="st0">'/pfad/zu/einer/datei.zip';
2 // Dateityp
3 'Content-type: application/octet-stream' );
4 // Größe der Datei
5 'Content-Length: '// Dateiname
6 'Content-Disposition: attachment; filename="''"' );
7 // Ausgeben der Datei
8 


Download einer Datei, die erst generiert und in einem string gespeichert wird

1 // Dateityp
2 'Content-type: application/octet-stream' );
3 // Größe der Datei
4 'Content-Length: '// Dateiname
5 'Content-Disposition: attachment; filename="datei.txt"' );
6 // Ausgeben der Datei
7 


siehe auch: Download

Wichtiger Hinweis

Der Header muss vor jeglicher Ausgabe (auch kein Leerzeichen) an den Browser gesendet werden!

Handbucheintrag


Weblinks