如果客户端接受gzip压缩,则重写

时间:2018-12-18 05:59:48

标签: nginx gzip nginx-location

是否可以添加条件,使得仅当HTTP请求指定客户端接受GZIP压缩时才进行以下重写?

location ~* ^/names {
    rewrite /names/(.*)$ /cache/html/names/$1.html.gz last;
    break;
}

1 个答案:

答案 0 :(得分:1)

location ~* ^/names {
    if ( $http_accept_encoding ~ "gzip" )
    {
        rewrite /names/(.*)$ /cache/html/names/$1.html.gz last;
        break;
    }
    rewrite ^/(.*)$ /index.php?request=$1 last;
    break;
}

if行检查HTTP接受编码标头是否包含gzip(不区分大小写)。

否则,它将重写第二个重写规则。