基于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 广告调用类代码(支持Flash调用)
Aug 11 PHP
PHP 处理TXT文件(打开/关闭/检查/读取)
May 13 PHP
使用php实现截取指定长度
Aug 06 PHP
php单态设计模式(单例模式)实例
Nov 18 PHP
discuz目录文件资料汇总
Dec 30 PHP
mysql desc(DESCRIBE)命令实例讲解
Sep 24 PHP
ThinkPHP 整合Bootstrap Ajax分页样式
Dec 23 PHP
PHP+JavaScript实现无刷新上传图片
Feb 21 PHP
PHP中strtr与str_replace函数运行性能简单测试示例
Jun 22 PHP
laravel5.2表单验证,并显示错误信息的实例
Sep 29 PHP
Laravel框架实现抢红包功能示例
Oct 31 PHP
php ActiveMQ的安装与使用方法图文教程
Feb 23 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
PHPMailer邮件发送的实现代码
2013/05/04 PHP
WordPress中对访客评论功能的一些优化方法
2015/11/24 PHP
php unlink()函数使用教程
2018/07/12 PHP
自制轻量级仿jQuery.boxy对话框插件代码
2010/10/26 Javascript
多个datatable共存造成多个表格的checkbox都被选中
2013/07/11 Javascript
js onload事件不起作用示例分析
2013/10/09 Javascript
JS字符串截取函数实例
2013/12/27 Javascript
js常用自定义公共函数汇总
2014/01/15 Javascript
基于NodeJS的前后端分离的思考与实践(三)轻量级的接口配置建模框架
2014/09/26 NodeJs
JavaScript中constructor()方法的使用简介
2015/06/05 Javascript
基于jQuery Tipso插件实现消息提示框特效
2016/03/16 Javascript
JS获取url参数、主域名的方法实例分析
2016/08/03 Javascript
基于javascript实现按圆形排列DIV元素(一)
2016/12/02 Javascript
浅谈jQuery的bind和unbind事件(绑定和解绑事件)
2017/03/02 Javascript
JS实现带动画的回到顶部效果
2017/12/28 Javascript
10个经典的网页鼠标特效代码
2018/01/09 Javascript
JavaScript实现计算多边形质心的方法示例
2018/01/31 Javascript
pycharm 使用心得(七)一些实用功能介绍
2014/06/06 Python
Python注释详解
2016/06/01 Python
详解 Python 与文件对象共事的实例
2017/09/11 Python
Python通过paramiko远程下载Linux服务器上的文件实例
2018/12/27 Python
python函数声明和调用定义及原理详解
2019/12/02 Python
python3让print输出不换行的方法
2020/08/24 Python
详解Python流程控制语句
2020/10/28 Python
美国狗旅行和户外用品领先供应商:kurgo
2020/08/18 全球购物
Belvilla法国:休闲度假房屋出租
2020/10/03 全球购物
某/etc/fstab文件中的某行如下: /dev/had5 /mnt/dosdata msdos defaults,usrquota 1 2 请解释其含义
2013/04/11 面试题
售后主管岗位职责
2013/12/08 职场文书
挂职自我鉴定
2014/02/26 职场文书
教育技术职业规划范文
2014/03/04 职场文书
应聘英语教师求职信
2014/04/24 职场文书
2014学校领导四风问题对照检查材料思想汇报
2014/09/22 职场文书
群众路线查摆问题及整改措施
2014/10/10 职场文书
2015年护士工作总结范文
2015/03/31 职场文书
2015年高中生国庆节演讲稿
2015/07/30 职场文书
SQL bool盲注和时间盲注详解
2022/07/23 SQL Server