PHP 文件与 HTTP Header

WBOY
Release: 2016-06-23 14:32:32
Original
1087 people have browsed it

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

<?phpheader('HTTP/1.1 200 OK');echo 'hello world!'?>
Copy after login

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

 <?phpheader('HTTP/1.1 200 OK');echo 'hello world!'?>
Copy after login

由于在 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状态码 - 维基百科

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template