nginx定制http头信息

修改http响应头信息,相关Nginx模块:ngx_http_headers_module

expires

  • 语法:
    • expires [modified] time;
    • expires [modified] time;
  • 默认值:expires off;
  • 作用域:http, server, location, if in location
  • 用途:控制缓存时间
  • 示例:
复制代码
# 不缓存
expires -1;
# 缓存一小时
expires 1h;
# 根据变量设置缓存时间
## 默认禁止缓存
## 如果Content-Type 是 application/pdf,则缓存42天
## 如果 Content-Type 是 image/ ,则缓存7天
map $sent_http_content_type $expires {
    default         off;
    application/pdf 42d;
    ~image/         7d;
}
expires $expires;
  • 注意事项:
    • 只有正常响应时才会被缓存
    • 如果业务系统缺少Last-Modified响应头,大部分浏览器并不会缓存

add_header

  • 语法:add_header name value [always];
  • 默认值:无
  • 作用域:http, server, location, if in location
  • 用途:添加自定义的响应头
  • 示例:
复制代码
add_header Access-Control-Allow-Methods 'GET, POST, PUT';
  • 注意事项:
    • 只有正常响应时才会返回自定义的响应头,像404、500这类异常状态码需要指定always参数才能返回自定义响应头。
    • 后端业务系统如果返回同名响应头,可能会引起bug。
相关推荐
tan180°22 分钟前
Linux网络HTTP(下)(9)
linux·网络·http
程序员小远23 分钟前
使用Jmeter进行http接口测试
自动化测试·软件测试·python·测试工具·jmeter·http·接口测试
着迷不白1 小时前
华为堡垒机
linux·运维·服务器·centos
牛奶咖啡131 小时前
zabbix实现监控Apache、Nginx、php-fpm应用的实操保姆级流程
nginx·apache·zabbix·php-fpm·zabbix监控apache·zabbix监控nginx·zabbix监控php-fpm
妮妮喔妮1 小时前
linux:查看某个文件下开启的进程占用的是哪个端口?
linux·运维·服务器
FJW0208142 小时前
【Linux】输入输出管理
linux·运维·服务器
遇见火星2 小时前
Aiops探索:基于Ansible的Dify版本运维智能体落地思路
运维·服务器·ansible
枫叶梨花3 小时前
实战:将 Nginx 日志实时解析并写入 MySQL,不再依赖 ELK
mysql·nginx·elk
TG_yunshuguoji3 小时前
亚马逊云渠道商:如何通过配置自动替换构建故障自愈的云架构?
运维·服务器·架构·云计算·aws
2301_772093565 小时前
高并发webserver_interview
运维·服务器·数据库·后端·网络协议·mysql·wireshark