Maison  >  Article  >  développement back-end  >  Résumé de l'utilisation du protocole HTTP utilisé par les en-têtes en php

Résumé de l'utilisation du protocole HTTP utilisé par les en-têtes en php

黄舟
黄舟original
2017-11-11 09:17:472309parcourir

Nous vous avons déjà présenté l'utilisation des fonctions d'en-tête et des méthodes d'en-tête en php. Aujourd'hui, nous allons vous présenter un résumé de l'utilisation du protocole HTTP utilisé par Header en php, y compris divers types de codage d'erreur et leurs significations. dans le besoin peuvent se référer à

Les exemples de cet article résument le protocole HTTP et les méthodes courantes utilisées par Header en PHP. Partagez-le avec tout le monde pour votre référence. La méthode spécifique est la suivante :

<?PHP 
function https($num) { 
$http = array ( 
100 => "HTTP/1.1 100 Continue", 
101 => "HTTP/1.1 101 Switching Protocols", 
200 => "HTTP/1.1 200 OK", 
201 => "HTTP/1.1 201 Created", 
202 => "HTTP/1.1 202 Accepted", 
203 => "HTTP/1.1 203 Non-Authoritative Information", 
204 => "HTTP/1.1 204 No Content", 
205 => "HTTP/1.1 205 Reset Content", 
206 => "HTTP/1.1 206 Partial Content", 
300 => "HTTP/1.1 300 Multiple Choices", 
301 => "HTTP/1.1 301 Moved Permanently", 
302 => "HTTP/1.1 302 Found", 
303 => "HTTP/1.1 303 See Other", 
304 => "HTTP/1.1 304 Not Modified", 
305 => "HTTP/1.1 305 Use Proxy", 
307 => "HTTP/1.1 307 Temporary Redirect", 
400 => "HTTP/1.1 400 Bad Request", 
401 => "HTTP/1.1 401 Unauthorized", 
402 => "HTTP/1.1 402 Payment Required", 
403 => "HTTP/1.1 403 Forbidden", 
404 => "HTTP/1.1 404 Not Found", 
405 => "HTTP/1.1 405 Method Not Allowed", 
406 => "HTTP/1.1 406 Not Acceptable", 
407 => "HTTP/1.1 407 Proxy Authentication Required", 
408 => "HTTP/1.1 408 Request Time-out", 
409 => "HTTP/1.1 409 Conflict", 
410 => "HTTP/1.1 410 Gone", 
411 => "HTTP/1.1 411 Length Required", 
412 => "HTTP/1.1 412 Precondition Failed", 
413 => "HTTP/1.1 413 Request Entity Too Large", 
414 => "HTTP/1.1 414 Request-URI Too Large", 
415 => "HTTP/1.1 415 Unsupported Media Type", 
416 => "HTTP/1.1 416 Requested range not satisfiable", 
417 => "HTTP/1.1 417 Expectation Failed", 
500 => "HTTP/1.1 500 Internal Server Error", 
501 => "HTTP/1.1 501 Not Implemented", 
502 => "HTTP/1.1 502 Bad Gateway", 
503 => "HTTP/1.1 503 Service Unavailable", 
504 => "HTTP/1.1 504 Gateway Time-out" 
); 
header($http[$num]); 
};

//200 正常状态
header(&#39;HTTP/1.1 200 OK&#39;);

// 301 永久重定向,记得在后面要加重定向地址 Location:$url
header(&#39;HTTP/1.1 301 Moved Permanently&#39;);

// 重定向,其实就是302 暂时重定向
header(&#39;Location: http://www.xxxx.com/&#39;);

// 设置页面304 没有修改
header(&#39;HTTP/1.1 304 Not Modified&#39;);

// 显示登录框,
header(&#39;HTTP/1.1 401 Unauthorized&#39;);
header(&#39;WWW-Authenticate: Basic realm="登录信息"&#39;);
echo &#39;显示的信息!&#39;;

// 403 禁止访问
header(&#39;HTTP/1.1 403 Forbidden&#39;);

// 404 错误
header(&#39;HTTP/1.1 404 Not Found&#39;);

// 500 服务器错误
header(&#39;HTTP/1.1 500 Internal Server Error&#39;);

// 3秒后重定向指定地址(也就是刷新到新页面与 <meta http-equiv="refresh" content="10;http://www.xxxx.com/ /> 相同)
header(&#39;Refresh: 3; url=http://www.xxxx.com/&#39;);
echo &#39;10后跳转到http://www.xxxx.com&#39;;

// 重写 X-Powered-By 值
header(&#39;X-Powered-By: PHP/5.3.0&#39;);
header(&#39;X-Powered-By: Brain/0.6b&#39;);

//设置上下文语言
header(&#39;Content-language: en&#39;);

// 设置页面最后修改时间(多用于防缓存)
$time = time() - 60; //建议使用filetime函数来设置页面缓存时间
header(&#39;Last-Modified: &#39;.gmdate(&#39;D, d M Y H:i:s&#39;, $time).&#39; GMT&#39;);

// 设置内容长度
header(&#39;Content-Length: 39344&#39;);

// 设置头文件类型,可以用于流文件或者文件下载
header(&#39;Content-Type: application/octet-stream&#39;);
header(&#39;Content-Disposition: attachment; filename="example.zip"&#39;); 
header(&#39;Content-Transfer-Encoding: binary&#39;);
readfile(&#39;example.zip&#39;);//读取文件到客户端

//禁用页面缓存
header(&#39;Cache-Control: no-cache, no-store, max-age=0, must-revalidate&#39;);
header(&#39;Expires: Mon, 26 Jul 1997 05:00:00 GMT&#39;); 
header(&#39;Pragma: no-cache&#39;);

//设置页面头信息
header(&#39;Content-Type: text/html; charset=iso-8859-1&#39;);
header(&#39;Content-Type: text/html; charset=utf-8&#39;);
header(&#39;Content-Type: text/plain&#39;); 
header(&#39;Content-Type: image/jpeg&#39;); 
header(&#39;Content-Type: application/zip&#39;); 
header(&#39;Content-Type: application/pdf&#39;); 
header(&#39;Content-Type: audio/mpeg&#39;);
header(&#39;Content-Type: application/x-shockwave-flash&#39;); 
//.... 至于Content-Type 的值 可以去查查 w3c 的文档库,那里很丰富
?>

Résumé :

Après avoir lu les articles précédents et vu maintenant, je vous crois tous avoir une certaine compréhension de l'utilisation des en-têtes en php, et j'espère avoir une certaine compréhension du travail de chacun !

Recommandations associées :

La méthode d'en-tête en php implémente le saut de page


Analyse du rôle de la fonction d'en-tête en php


Explication détaillée de la définition d'en-tête en php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn