all repos — homestead @ c63154447f285f8c4f4e95b2faec8f0ac80384c6

Code for my website

refactor mux filemap into files.Reader

Alan Pearce
commit

c63154447f285f8c4f4e95b2faec8f0ac80384c6

parent

27e64d5478221580c710287be37b60d275161cc8

1 file changed, 10 insertions(+), 2 deletions(-)

changed files
M internal/server/server.gointernal/server/server.go
@@ -16,6 +16,7 @@ "time"
"go.alanpearce.eu/website/internal/builder" cfg "go.alanpearce.eu/website/internal/config" + "go.alanpearce.eu/website/internal/storage/files" "go.alanpearce.eu/website/internal/vcs" "go.alanpearce.eu/website/internal/website" "go.alanpearce.eu/x/log"
@@ -174,7 +175,14 @@ })
} loggingMux := http.NewServeMux() - mux, err := website.NewMux(config, runtimeConfig.Root, log.Named("website")) + + log.Debug("registering content files", "root", runtimeConfig.Root) + reader, err := files.NewReader(runtimeConfig.Root, log.Named("files")) + if err != nil { + return nil, errors.WithMessage(err, "could not create file reader") + } + + mux, err := website.NewMux(config, reader, log.Named("website")) if err != nil { return nil, errors.WithMessage(err, "could not create website mux") }
@@ -188,7 +196,7 @@ loggingMux.Handle(config.BaseURL.Hostname()+"/", mux)
loggingMux.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { switch { case slices.Contains(config.Domains, r.Host): - path, _ := website.CanonicalisePath(r.URL.Path) + path, _ := reader.CanonicalisePath(r.URL.Path) http.Redirect( w, r,