mirror of
https://github.com/caddyserver/caddy.git
synced 2024-12-17 02:04:06 +08:00
f35a7fa466
* encode: implement prefer setting * encode: minimum_length configurable via caddyfile * encode: configurable content-types which to encode * file_server: support precompressed files * encode: use ReponseMatcher for conditional encoding of content * linting error & documentation of encode.PrecompressedOrder * encode: allow just one response matcher also change the namespace of the encoders back, I accidently changed to precompressed >.> default matchers include a * to match to any charset, that may be appended * rounding of the PR * added integration tests for new caddyfile directives * improved various doc strings (punctuation and typos) * added json tag for file_server precompress order and encode matcher * file_server: add vary header, remove accept-ranges when serving precompressed files * encode: move Suffix implementation to precompressed modules
29 lines
735 B
Go
29 lines
735 B
Go
package caddygzip
|
|
|
|
import (
|
|
"github.com/caddyserver/caddy/v2"
|
|
"github.com/caddyserver/caddy/v2/modules/caddyhttp/encode"
|
|
)
|
|
|
|
func init() {
|
|
caddy.RegisterModule(GzipPrecompressed{})
|
|
}
|
|
|
|
// GzipPrecompressed provides the file extension for files precompressed with gzip encoding.
|
|
type GzipPrecompressed struct {
|
|
Gzip
|
|
}
|
|
|
|
// CaddyModule returns the Caddy module information.
|
|
func (GzipPrecompressed) CaddyModule() caddy.ModuleInfo {
|
|
return caddy.ModuleInfo{
|
|
ID: "http.precompressed.gzip",
|
|
New: func() caddy.Module { return new(GzipPrecompressed) },
|
|
}
|
|
}
|
|
|
|
// Suffix returns the filename suffix of precompressed files.
|
|
func (GzipPrecompressed) Suffix() string { return ".gz" }
|
|
|
|
var _ encode.Precompressed = (*GzipPrecompressed)(nil)
|