Skip to content

Simple and secure Go HTTP server to serve static sites or files from the command-line.

License

Notifications You must be signed in to change notification settings

kevinpollet/serve

Repository files navigation

serve

Build Status

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.

Installation

go install github.com/kevinpollet/serve

Usage

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.

Docker

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.

Examples

  • hello — Simple static site that can be served from the command-line.
  • docker — Simple static site that can be served from a Docker container.

Contributing

PRs welcome!

Want to file a bug or request a feature?

  1. Check out the Code of Conduct.
  2. Check for an existing issue corresponding to your bug or feature request.
  3. Open an issue to describe your bug or feature request.

License

MIT

About

Simple and secure Go HTTP server to serve static sites or files from the command-line.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published