我正在寻找一种设置服务器范围内的到期标头的方法,以便所有现有或新的虚拟主机都配置为相同。不幸的是,我无法在每个虚拟主机的conf文件中执行此操作,因此我正在寻找一种使以下指令在服务器范围内运行的方法。
location ~* .(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|css|rss|atom|js|jpg
|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid
|midi|wav|bmp|rtf)$ {
expires max;
log_not_found off;
access_log off;
}
该expires
指令可以放置在http
块中,因此被所有服务器块及其位置块继承。
该手册显示了将expires
指令与map
变量一起使用的示例。请参阅本文档。
您可以使用$request_uri
而不是$sent_http_content_type
匹配现有的正则表达式来实现与以下行为相同的行为:
map $request_uri $expires {
default off;
~*\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|css|rss|atom|js|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)(\?|$) max;
}
expires $expires;
这两个指令都放置在http
块的内部,但是在任何server
块的外部。
有关详细信息,请参见此文档。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句