header PHP:隐藏功能揭秘 助力敏捷开发提升网站性能
优化缓存控制
header("Cache-Control: public"); 公开缓存,允许浏览器缓存响应。
header("Cache-Control: no-cache"); 禁用缓存,强制浏览器每次都向服务器请求。
header("Cache-Control: max-age=3600"); 设置缓存过期时间,3600秒后到期。
设置内容类型
header("Content-Type: text/html"); 设置为HTML响应。
header("Content-Type: application/json"); 设置为 *** ON响应。
header("Content-Type: image/jpeg"); 设置为JPEG图像响应。
控制内容长度
header("Content-Length: 1024"); 设置响应长度为1024字节。
header("Content-Length: 0"); 设置响应长度为0,用于无内容响应。
header("Content-Length: transfer-encoding"); 让服务器计算响应长度。
添加附件
header("Content-Disposition: attachment; filename=file.txt"); 设置为下载响应,文件名file.txt。
header("Content-Disposition: inline; filename=file.txt"); 设置为在线查看响应,文件名file.txt。
header("Content-Disposition: form-data; name=file; filename=file.txt"); 设置为表单数据响应,字段名为file,文件名file.txt。
设置重定向
header("Location: 重定向到example.com。
header("Status: 301 Moved Permanently"); 设置301永久重定向。
header("Refresh: 5; URL= 5秒后重定向到example.com。
设置安全标头
header("Strict-Transport-Security: max-age=31536000; includeSubDomains"); 强制使用HTTPS连接,持续一年。
header("X-Content-Type-Options: nosniff"); 禁用浏览器的嗅探功能,防止恶意内容被渲染。
header("X-Frame-Options: DENY"); 禁止在iframe中加载页面。
设置跨域响应标头
header("Access-Control-Allow-Origin: "); 允许所有来源跨域访问响应。
header("Access-Control-Allow-Methods: GET, POST, PUT, DELETE"); 允许指定 *** 的跨域访问。
header("Access-Control-Allow-Headers: Content-Type, Authorization"); 允许指定标头的跨域访问。
启用Gzip压缩
header("Content-Encoding: gzip"); 启用Gzip压缩,减少响应大小。
header("Vary: Accept-Encoding"); 根据浏览器接受的编码类型调整响应。
header("Transfer-Encoding: chunked"); 使用分块编码传输数据,提高压缩效率。
设置cookie
header("Set-Cookie: name=value; path=/; expires=timestamp"); 设置名为name的cookie,路径为/,过期时间为timestamp。
header("Set-Cookie: name=value; secure; httponly"); 设置安全cookie,仅通过HTTPS连接发送,无法通过脚本访问。
header("Set-Cookie: name=value; domain=example.com"); 设置特定域名的cookie。
修改HTTP状态码
header("HTTP/1.1 200 OK"); 设置200 OK状态码。
header("HTTP/1.1 404 Not Found"); 设置404 Not Found状态码。
header("HTTP/1.1 500 Internal Server Error"); 设置500 Internal Server Error状态码。
自定义标头
header("X-My-Custom-Header: Value"); 设置自定义标头X-My-Custom-Header。
header("Example: This is an example header"); 设置名为Example的标头,值为This is an example header。
header("Multiple: Value1, Value2, Value3"); 设置名为Multiple的标头,值为多个逗号分隔的值。