加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

根据nginx中的mime类型有条件地添加expires头

发布时间:2020-12-13 21:27:57 所属栏目:Nginx 来源:网络整理
导读:在ubuntu 12.10上运行nginx 1.4.1 需要有条件地发送expires头并基于http响应的mime类型/内容类型. 在location / {中添加了这段简单的代码 if ($sent_http_content_type = "text/css") { expires 7d;} 即使$sent_http_content_type包含“text / css”,也不会

在ubuntu 12.10上运行nginx 1.4.1

需要有条件地发送expires头并基于http响应的mime类型/内容类型.

在location / {中添加了这段简单的代码

if ($sent_http_content_type = "text/css") { 
expires 7d;
}

即使$sent_http_content_type包含“text / css”,也不会发送过期标头

如何解决这个问题?

检查文件扩展名是不够的,因为在我的应用程序js,css中,图像是从php动态生成的.所以需要检查mime并根据它添加标题.

最佳答案
截至nginx 1.7.9:

map $sent_http_content_type $expires {
  default         off;
  application/pdf 42d;
  ~image/         max;
}

expires $expires;

注意:$sent_http_content_type有效,但在服务器处理完请求之前无法访问它…

答案是指向application / pdf的map条目,它允许日期值,或者甚至可以是application / pdf modified 42d例如

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读