You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

29 lines
631 B

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)