Board logo

标题: PHP header发放HTTP头信息 [打印本页]

作者: xiexie    时间: 2008-10-22 22:40     标题: PHP header发放HTTP头信息

标头 (header) 是服务器以 HTTP 协义传 HTML 资料到浏览器前所送出的字串,在标头与 HTML 文件之间尚需空一行分隔。有关 HTTP 的详细说明,可以参 RFC 2068 官方文件   (http://www.w3.org/Protocols/rfc2068/rfc2068)。在 PHP 中送回 HTML 资料前,需先传完所有的标头。

注意: 传统的标头一定包含下面三种标头之一,并只能出现一次。

<?php
2

3 // ok
4 header('HTTP/1.1 200 OK');
5

6 //设置一个404头:
7 header('HTTP/1.1 404 Not Found');
8

9 //设置地址被永久的重定向
10 header('HTTP/1.1 301 Moved Permanently');
11

12 //转到一个新地址
13 header('Location: http://www.example.org/');
14

15 //文件延迟转向:
16 header('Refresh: 10; url=http://www.example.org/');
17
print 'You will be redirected in 10 seconds';
18

19 //当然,也可以使用html语法实现
20
// <meta http-equiv="refresh" content="10;http://www.example.org/ />
21

22 // override X-Powered-By: PHP:
23 header('X-Powered-By: PHP/4.4.0');
24
header('X-Powered-By: Brain/0.6b');
25

26 //文档语言
27 header('Content-language: en');
28

29 //告诉浏览器最后一次修改时间
30 $time = time() - 60; // or filemtime($fn), etc
31 header('Last-Modified: '.gmdate('D, d M Y H:i:s', $time).' GMT');
32

33 //告诉浏览器文档内容没有发生改变
34 header('HTTP/1.1 304 Not Modified');
35

36 //设置内容长度
37 header('Content-Length: 1234');
38

39 //设置为一个下载类型
40 header('Content-Type: application/octet-stream');
41
header('Content-Disposition: attachment; filename="example.zip"');
42
header('Content-Transfer-Encoding: binary');
43
// load the file to send:
44 readfile('example.zip');
45

46 // 对当前文档禁用缓存
47 header('Cache-Control: no-cache, no-store, max-age=0, must-revalidate');
48
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past
49 header('Pragma: no-cache');
50

51 //设置内容类型:
52 header('Content-Type: text/html; charset=iso-8859-1');
53
header('Content-Type: text/html; charset=utf-8');
54
header('Content-Type: text/plain'); //纯文本格式
55 header('Content-Type: image/jpeg'); //JPG图片
56 header('Content-Type: application/zip'); // ZIP文件
57 header('Content-Type: application/pdf'); // PDF文件
58 header('Content-Type: audio/mpeg'); // 音频文件
59 header('Content-Type: application/x-shockwave-flash'); //Flash动画
60

61 //显示登陆对话框
62 header('HTTP/1.1 401 Unauthorized');
63
header('WWW-Authenticate: Basic realm="Top Secret"');
64
print 'Text that will be displayed if the user hits cancel or ';
65
print 'enters wrong login data';
66
?>

[ 本帖最后由 xiexie 于 2011-5-17 14:01 编辑 ]
作者: fangzhen    时间: 2009-11-21 01:14

header("Content-Type:text/html; charset=utf-8");




欢迎光临 PHP开发笔记 (http://phpvi.com/) Powered by Discuz! 6.1.0