基于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 相关文章推荐
不用数据库的多用户文件自由上传投票系统(1)
Oct 09 PHP
表格展示无限级分类(PHP版)
Aug 21 PHP
探讨Smarty中如何获取数组的长度以及smarty调用php函数的详解
Jun 20 PHP
PHP eval函数使用介绍
Dec 08 PHP
php实现httpclient类示例
Apr 08 PHP
教你如何在CI框架中使用 .htaccess 隐藏url中index.php
Jun 09 PHP
ThinkPHP单字母函数(快捷方法)使用总结
Jul 23 PHP
PHP rsa加密解密使用方法
Apr 27 PHP
PHP5.3连接Oracle客户端及PDO_OCI模块的安装方法
May 13 PHP
解读PHP中上传文件的处理问题
May 29 PHP
Yii框架使用魔术方法实现跨文件调用功能示例
May 20 PHP
PHP简单实现模拟登陆功能示例
Sep 15 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
使用Smarty 获取当前日期时间和格式化日期时间的方法详解
2013/06/18 PHP
php eval函数一句话木马代码
2015/05/21 PHP
PHP中PDO的事务处理分析
2016/04/07 PHP
PHP简单实现图片格式转换(jpg转png,gif转png等)
2019/10/30 PHP
js计数器代码
2006/11/04 Javascript
jquery不会自动回收xmlHttpRequest对象 导致了内存溢出
2012/06/18 Javascript
javascript学习笔记(九) js对象 设计模式
2012/06/19 Javascript
jQuery实现数字加减效果汇总
2014/12/16 Javascript
JavaScript中日期函数的相关操作知识
2016/08/03 Javascript
javascript遍历json对象的key和任意js对象属性实例
2017/03/09 Javascript
JavaScript实现移动端轮播效果
2017/06/06 Javascript
vue 打包后的文件部署到express服务器上的方法
2017/08/09 Javascript
JavaScript+CSS相册特效实例代码
2017/09/07 Javascript
Angular2实现组件交互的方法分析
2017/12/19 Javascript
javascript高仿热血传奇游戏实现代码
2018/02/22 Javascript
React 源码中的依赖注入方法
2018/11/07 Javascript
微信小程序获取用户信息并保存登录状态详解
2019/05/10 Javascript
vue使用showdown并实现代码区域高亮的示例代码
2019/10/17 Javascript
微信小程序使用 vant Dialog组件的正确方式
2020/02/21 Javascript
javascript 代码是如何被压缩的示例代码
2020/05/06 Javascript
Vue 实现对quill-editor组件中的工具栏添加title
2020/08/03 Javascript
简介Python设计模式中的代理模式与模板方法模式编程
2016/02/02 Python
python批量修改图片后缀的方法(png到jpg)
2018/10/25 Python
Pandas中Series和DataFrame的索引实现
2019/06/27 Python
Python 分享10个PyCharm技巧
2019/07/13 Python
在django中图片上传的格式校验及大小方法
2019/07/28 Python
使用 Django Highcharts 实现数据可视化过程解析
2019/07/31 Python
Python退出时强制运行一段代码的实现方法
2020/04/29 Python
Python socket服务常用操作代码实例
2020/06/22 Python
电子邮箱格式怎么写
2014/01/12 职场文书
2014年教师节讲话稿5篇
2014/09/10 职场文书
2014办公室副主任四风对照检查材料思想汇报
2014/09/20 职场文书
小学生运动会通讯稿
2014/09/23 职场文书
nginx location中多个if里面proxy_pass的方法
2021/03/31 Servers
扩展多台相同的Web服务器
2021/04/01 Servers
Mysql中一千万条数据怎么快速查询
2021/12/06 MySQL