blob: 2a6fe37fcec5e5b3bb0b07397983a7019568a248 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
package staticfiles
import (
"net/http"
"bitbucket.org/lightcodelabs/caddy2"
"bitbucket.org/lightcodelabs/caddy2/modules/caddyhttp"
)
func init() {
caddy2.RegisterModule(caddy2.Module{
Name: "http.responders.static_files",
New: func() (interface{}, error) { return new(StaticFiles), nil },
})
}
// StaticFiles implements a static file server responder for Caddy.
type StaticFiles struct {
Root string
}
func (sf StaticFiles) ServeHTTP(w http.ResponseWriter, r *http.Request) error {
http.FileServer(http.Dir(sf.Root)).ServeHTTP(w, r)
return nil
}
// Interface guard
var _ caddyhttp.Handler = (*StaticFiles)(nil)
|