发布于 2015-09-03 16:00:19 | 250 次阅读 | 评论: 0 | 来源: 网络整理
在nginx本身原有的设置过期时间的基础上,增加了expires_by_types指令,用于根据Content-Type来设置过期时间。
原有的功能介绍看这里。
expires_by_types 24h text/html; expires_by_types modified +24h text/xml; expires_by_types @15h30m text/xml; expires_by_types 0 text/xml; expires_by_types -1 text/xml; expires_by_types epoch text/xml;
该指令配置过期时间及其对应的content-type。过期时间的配置可参考expires的配置。在配置时间之后,可加上一到多个content-type。
注意,在即有expires也有expires_by_types出现时,规则如下:
location /url { expires 10s; expires_by_types 24s text/html; }此时,/url下面的文档,text/html类型的会返回24s的过期时间,而其它类型的会返回10s的过期时间。
expires 10s; expires_by_types 24s text/html; location /url { expires_by_types 20s text/rss; }此时,/url下面的文档,text/rss类型的会返回20s的过期时间,而其它类型的会返回10s的过期时间。因为location里面的expires_by_types将上层的expires_by_types覆盖了。而expires 10s则被继承了下来。
expires 10s; expires_by_types 24s text/html; location /url { expires off; expires_by_types 20s text/rss; }此时,/url下面的所有文档,都不会有过期时间。
expires off; expires_by_types 24s text/html; location /url { expires_by_types 20s text/rss; }此时,/url下面的文档,text/rss类型的会返回20s的过期时间,其它类型的没有过期时间。注意,expires off不会继承过来。