PHP 文件与 HTTP Header

WBOY
發布: 2016-06-23 14:32:32
原創
1064 人瀏覽過

在服务器执行的 PHP 代码,一般用于回应客户端的 HTTP 请求。一个最简单的 PHP 文件是这样的:

<?phpheader('HTTP/1.1 200 OK');echo 'hello world!'?>
登入後複製

按照 HTTP 标准,一个 HTTP 消息一般分为两个部分:HTTP 头部(header)和 HTTP 正文(body);而且头部消息必须在正文消息之前输出。在 PHP 文件中,用 header 函数可以输出头部信息,而用 echo 命令可以输出正文消息;如果不使用 header 函数,在输出正文之前将输出默认的头部信息。因此,对于下面这个例子:

 <?phpheader('HTTP/1.1 200 OK');echo 'hello world!'?>
登入後複製

由于在 PHP 文件的最前面还有空行,PHP 将会把它作为正文输出,从而后面执行 header 函数时将会警告头部信息已经输出过。另外,有的文件使用 Unicode 编码,如果不去掉文件开始的 BOM 字符,也会导致这个问题。对于 PHP 文件最后面的空行,不会有什么问题,因为 PHP 会自动删除 ?> 后面的一个换行符。

顺便看看一些常见的 HTTP 代码,列表如下:

200 OK 201 Created 400 Bad Request 401 Unauthorized 403 Forbidden 404 Not Found 405 Method Not Allowed 415 Unsupported Media Type 500 Internal Server Error

参考资料:
[1] PHP 手册:第一个 PHP 页面
[2] PHP 手册:header
[3] PHP 手册:echo
[4] Hypertext Transfer Protocol -- HTTP/1.1
[5] HTTP Header 详解
[6] Modify HTTP Headers (Examples)
[7] php闭合标签输出多余空行使xml页面显示错误
[8] HTTP状态码 - 维基百科

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!