[nginx]定制http头信息

简介: [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。

参考


相关文章
|
1月前
|
缓存 应用服务中间件 网络安全
Nginx中配置HTTP2协议的方法
Nginx中配置HTTP2协议的方法
83 7
|
7月前
|
监控 Unix 应用服务中间件
Android-音视频学习系列-(八)基于-Nginx-搭建(rtmp、http)直播服务器
Android-音视频学习系列-(八)基于-Nginx-搭建(rtmp、http)直播服务器
|
7月前
|
缓存 负载均衡 应用服务中间件
如何在 CentOS 7 上为 NGINX 安装开源 HTTP 加速器:Varnish
如何在 CentOS 7 上为 NGINX 安装开源 HTTP 加速器:Varnish
192 1
如何在 CentOS 7 上为 NGINX 安装开源 HTTP 加速器:Varnish
|
4月前
|
缓存 应用服务中间件 API
Nginx七层(应用层)反向代理:HTTP反向代理proxy_pass篇(三)
Nginx七层(应用层)反向代理:HTTP反向代理proxy_pass篇(三)
64 3
|
4月前
|
缓存 安全 应用服务中间件
Nginx七层(应用层)反向代理:HTTP反向代理proxy_pass篇(二)
Nginx七层(应用层)反向代理:HTTP反向代理proxy_pass篇(二)
121 1
|
4月前
|
运维 算法 应用服务中间件
运维系列.Nginx中使用HTTP压缩功能(一)
运维系列.Nginx中使用HTTP压缩功能(一)
87 1
|
4月前
|
负载均衡 应用服务中间件 网络安全
Nginx七层(应用层)反向代理:HTTP反向代理proxy_pass篇(一)
Nginx七层(应用层)反向代理:HTTP反向代理proxy_pass篇(一)
788 0
|
4月前
|
缓存 应用服务中间件 nginx
运维系列.Nginx中使用HTTP压缩功能(二)
运维系列.Nginx中使用HTTP压缩功能(二)
59 0
|
5月前
|
网络协议 应用服务中间件 nginx
Nginx的http块sendfile,keepalive_timeout的配置指令说明
Nginx的http块sendfile,keepalive_timeout的配置指令说明
|
6月前
|
Kubernetes 容器 Perl
k8s部署seata 报错 没有提供足够的身份验证信息 [ http-nio-7091-exec-2] [ty.JwtAuthenticationEntryPoint] [ commence] [] : Responding with unauthorized error. Message - Full authentication is required to access this resource
Kubernetes pod 在16:12时出现两次错误,错误信息显示需要完整认证才能访问资源。尽管有此错误,但页面可正常访问。附有yaml配置文件的图片。
498 2