Simple and secure Go HTTP
server to serve static sites or files from the command-line.
- HTTP/2 and TLS support.
- Custom Error pages.
- Basic HTTP authentication.
- Hide dot files by default.
- Directory listing is disabled by default.
- Encoding negotiation with support of gzip, Deflate and Brotli compression algorithms.
go install github.com/kevinpollet/serve
Usage: serve [options]
Options:
-addr Sets the server address. Default is "127.0.0.1:8080".
-auth Sets the basic auth credentials (password must be hashed with bcrypt and escaped with '').
-auth-file Sets the basic auth credentials following the ".htpasswd" format.
-dir Sets the directory containing the files to serve. Default is ".".
-cert Sets the TLS certificate.
-key Sets the TLS private key.
-help Prints this text.
A Docker image is available to serve static files from a running Docker
container. By default, all files located in the /var/www/
directory will be made available through TCP connections on
port 8080
. For more details, check out the Docker example.
- hello — Simple static site that can be served from the command-line.
- docker — Simple static site that can be served from a Docker container.
PRs welcome!
Want to file a bug or request a feature?
- Check out the Code of Conduct.
- Check for an existing issue corresponding to your bug or feature request.
- Open an issue to describe your bug or feature request.