├── .github └── workflows │ └── go-test.yaml ├── .gitignore ├── LICENSE ├── README.md ├── cache_control.go ├── cmd └── fileserver │ └── main.go ├── compress.go ├── compress_test.go ├── errors.go ├── etag.go ├── etag_test.go ├── go.mod ├── server.go ├── server_opts.go ├── server_opts_test.go ├── server_test.go ├── spa.go ├── spa_test.go └── testdata ├── file.txt ├── spa ├── assets │ └── app.js └── index.html └── subdir └── subfile.txt /.github/workflows/go-test.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/.github/workflows/go-test.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | cover 3 | .vscode 4 | .idea 5 | .DS_Store 6 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/README.md -------------------------------------------------------------------------------- /cache_control.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/cache_control.go -------------------------------------------------------------------------------- /cmd/fileserver/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/cmd/fileserver/main.go -------------------------------------------------------------------------------- /compress.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/compress.go -------------------------------------------------------------------------------- /compress_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/compress_test.go -------------------------------------------------------------------------------- /errors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/errors.go -------------------------------------------------------------------------------- /etag.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/etag.go -------------------------------------------------------------------------------- /etag_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/etag_test.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- 1 | module github.com/ffss92/fileserver 2 | 3 | go 1.18 4 | -------------------------------------------------------------------------------- /server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/server.go -------------------------------------------------------------------------------- /server_opts.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/server_opts.go -------------------------------------------------------------------------------- /server_opts_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/server_opts_test.go -------------------------------------------------------------------------------- /server_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/server_test.go -------------------------------------------------------------------------------- /spa.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/spa.go -------------------------------------------------------------------------------- /spa_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/spa_test.go -------------------------------------------------------------------------------- /testdata/file.txt: -------------------------------------------------------------------------------- 1 | hello world 2 | -------------------------------------------------------------------------------- /testdata/spa/assets/app.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/testdata/spa/assets/app.js -------------------------------------------------------------------------------- /testdata/spa/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ffss92/fileserver/HEAD/testdata/spa/index.html -------------------------------------------------------------------------------- /testdata/subdir/subfile.txt: -------------------------------------------------------------------------------- 1 | foobar 2 | --------------------------------------------------------------------------------