基于header的一些常用指令详解


Posted in PHP onJune 06, 2013

header常用指令
header分为三部分:
第一部分为HTTP协议的版本(HTTP-Version);
第二部分为状态代码(Status);
第三部分为原因短语(Reason-Phrase)。

// fix 404 pages:   用这个header指令来解决URL重写产生的404 header
header('HTTP/1.1 200 OK');  

// set 404 header:   页面没找到
header('HTTP/1.1 404 Not Found');  

//页面被永久删除,可以告诉搜索引擎更新它们的urls
// set Moved Permanently header (good for redrictions)  
// use with location header  
header('HTTP/1.1 301 Moved Permanently'); 

// 访问受限
header('HTTP/1.1 403 Forbidden');

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

// 重定向到一个新的位置
// redirect to a new location:  
header('Location: http://www.example.org/');  

延迟一段时间后重定向
// redrict with delay:  
header('Refresh: 10; url=http://www.example.org/');  
print 'You will be redirected in 10 seconds';  

// 覆盖 X-Powered-By value
// override X-Powered-By: PHP:  
header('X-Powered-By: PHP/4.4.0');  
header('X-Powered-By: Brain/0.6b');  

// 内容语言 (en = English)
// content language (en = English)  
header('Content-language: en');  

//最后修改时间(在缓存的时候可以用到)
// last modified (good for caching)  
$time = time() - 60; // or filemtime($fn), etc  
header('Last-Modified: '.gmdate('D, d M Y H:i:s', $time).' GMT');  

// 告诉浏览器要获取的内容还没有更新
// header for telling the browser that the content  
// did not get changed  
header('HTTP/1.1 304 Not Modified');  

// 设置内容的长度 (缓存的时候可以用到):
// set content length (good for caching):  
header('Content-Length: 1234');  

// 用来下载文件:
// Headers for an download:  
header('Content-Type: application/octet-stream');  
header('Content-Disposition: attachment; filename="example.zip"');  
header('Content-Transfer-Encoding: binary');  

// 禁止缓存当前文档:
// load the file to send:readfile('example.zip');  
// Disable caching of the current document:  
header('Cache-Control: no-cache, no-store, max-age=0, must-revalidate');  
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');  

// 设置内容类型:
// Date in the pastheader('Pragma: no-cache');  
// set content type:  
header('Content-Type: text/html; charset=iso-8859-1');  
header('Content-Type: text/html; charset=utf-8');  
header('Content-Type: text/plain');  

// plain text file  
header('Content-Type: image/jpeg');  

// JPG picture  
header('Content-Type: application/zip');  

// ZIP file  
header('Content-Type: application/pdf');  

// PDF file  
header('Content-Type: audio/mpeg');  

// Audio MPEG (MP3,...) file  
header('Content-Type: application/x-shockwave-flash');  

// 显示登录对话框,可以用来进行HTTP认证
// Flash animation// show sign in box  
header('HTTP/1.1 401 Unauthorized');  
header('WWW-Authenticate: Basic realm="Top Secret"');  
print 'Text that will be displayed if the user hits cancel or ';  

print 'enters wrong login data';?>

// 发送一个200 正常响应
header("HTTP/1.1 200 OK");

// 发送一个404 找不到资源响应
header('HTTP/1.1 404 Not Found');

// 发送一个301 永久重定向
header('HTTP/1.1 301 Moved Permanently');

// 发送一个503 网站暂时不能访问
header('HTTP/1.1 503 Service Temporarily Unavailable');

// 网页重定向
header('Location: https://3water.com');

// 设置网页3秒后重定向
header('Refresh: 3; url=https://3water.com');
echo '网页将在3秒后跳转到https://3water.com';

// 设置网页编码
header('Content-Type: text/html; charset=utf-8');

// 设置网页输出一个图片流
header('Content-Type: image/jpeg');

// 设置网页输出一个pdf文档
header('Content-Type: application/pdf');

// 设置网页输出一个zip文档
header('Content-Type: application/zip');

PHP 相关文章推荐
php error_log 函数的使用
Apr 13 PHP
比较好用的PHP防注入漏洞过滤函数代码
Apr 11 PHP
php中{}大括号是什么意思
Dec 01 PHP
PHP $_FILES中error返回值详解
Jan 30 PHP
php使用多个进程同时控制文件读写示例
Feb 28 PHP
destoon实现调用当前栏目分类及子分类和三级分类的方法
Aug 21 PHP
PHP访问Google Search API的方法
Mar 05 PHP
PHP网络操作函数汇总
May 18 PHP
Yii2实现ajax上传图片插件用法
Apr 28 PHP
浅谈PHP的数据库接口和技术
Dec 09 PHP
Zend Framework处理Json数据方法详解
Dec 09 PHP
PHP如何实现阿里云短信sdk灵活应用在项目中的方法
Jun 14 PHP
深入php 正则表达式的学习探讨
Jun 06 #PHP
深入理解:单一入口、MVC、ORM、CURD、ActiveRecord概念
Jun 06 #PHP
PHP CodeBase:将时间显示为"刚刚""n分钟/小时前"的方法详解
Jun 06 #PHP
深入PHP empty(),isset(),is_null()的实例测试详解
Jun 06 #PHP
解析PHP多种序列化与反序列化的方法
Jun 06 #PHP
一个简洁的PHP可逆加密函数(分享)
Jun 06 #PHP
深入PHP获取随机数字和字母的方法详解
Jun 06 #PHP
You might like
php中magic_quotes_gpc对unserialize的影响分析
2014/12/16 PHP
php屏蔽错误及提示的方法
2020/05/10 PHP
如何在PHP中读写文件
2020/09/07 PHP
同一个表单 根据要求递交到不同页面的实现方法小结
2009/08/05 Javascript
jquery 全局AJAX事件使用代码
2010/11/05 Javascript
in.js 一个轻量级的JavaScript颗粒化模块加载和依赖关系管理解决方案
2011/07/26 Javascript
jquery事件与函数的使用介绍
2013/09/29 Javascript
自己用jQuery写了一个图片的马赛克消失效果
2014/05/04 Javascript
JS实现超过长度限制后自动跳转下一款文本框的方法
2015/02/23 Javascript
分享一则JavaScript滚动条插件源码
2015/03/03 Javascript
解析javascript瀑布流原理实现图片滚动加载
2016/03/10 Javascript
再次谈论React.js实现原生js拖拽效果引起的一系列问题
2016/04/03 Javascript
jQuery遍历json的方法(推荐)
2016/06/12 Javascript
ionic cordova一次上传多张图片(类似input file提交表单)的实现方法
2016/12/16 Javascript
JS解决移动web开发手机输入框弹出的问题
2017/03/31 Javascript
JavaScript的数据类型转换原则(干货)
2018/03/15 Javascript
基于Vue+element-ui 的Table二次封装的实现
2018/07/20 Javascript
详解如何解决Vue和vue-template-compiler版本之间的问题
2018/09/17 Javascript
微信小程序实现拖拽功能
2019/09/26 Javascript
深入分析JavaScript 事件循环(Event Loop)
2020/06/19 Javascript
[34:47]完美世界DOTA2联赛PWL S2 Magma vs LBZS 第一场 11.18
2020/11/18 DOTA
Python中用altzone()方法处理时区的教程
2015/05/22 Python
python append、extend与insert的区别
2016/10/13 Python
使用Python绘制图表大全总结
2017/02/11 Python
python清除字符串前后空格函数的方法
2018/10/21 Python
python输入一个水仙花数(三位数) 输出百位十位个位实例
2020/05/03 Python
前端H5 Video常见使用场景简介
2020/08/21 HTML / CSS
莫斯科购买书籍网站:Book24
2020/01/12 全球购物
JSF面试题:Jsf中导航的标签是什么
2013/04/20 面试题
业务主管岗位职责
2013/11/20 职场文书
打架检讨书100字
2014/01/08 职场文书
房屋改造计划书
2014/01/10 职场文书
党员教师学习党的群众路线教育实践活动心得体会
2014/10/31 职场文书
2015年学校总务处工作总结
2015/05/19 职场文书
2015年暑期社会实践方案
2015/07/14 职场文书
2019大学毕业晚会主持词
2019/06/21 职场文书