diff --git a/README.md b/README.md index 28ab3b3..a552b86 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ PLEASE NOTE THIS README IS OUT-OF-DATE SINCE THE REWRITE. -A Gopher server written (twice!) in GoLang. +A Gopher (and soon, Gemini!) server written in GoLang. Unix (like) OSes only. Cross-compiled to way too many architectures. Build-script now much improved, but still not pretty... @@ -15,356 +15,29 @@ WARNING: the development branch is filled with lava, fear and capitalism. # Features -- Built with security, concurrency and efficiency in mind. +- Built with security, concurrency and efficiency in mind -- ZERO external dependencies. +- ZERO external dependencies - LRU file caching with user-controlled cache size, max cached file size - and cache refresh frequency. + and cache refresh frequency -- CGI/1.1 support (see below for CGI environment variables set). +- CGI/1.1 support -- URL encoding with query support. +- URL encoding with query support -- Serve `DIR/gophermap` by default, else falls back to directory listing. +- Path access restrictions with regex (see (usage)[docs/USAGE.md]) -- Parsing of any files named `gophermap` or ending in `.gophermap` as - gophermaps. +- Request remapping with regex (see (usage)[docs/USAGE.md]) -- Executable gophermap support. +- Separate system and access logging -- Insert files with automated line reflowing, output of any CGI scripts - or executable gophermaps WITHIN gophermaps. +# Further Docs -- Support for all commonly accepted item type characters (beyond just - RFC1436 support). +(Usage)[docs/USAGE.md] -- Automatic replacement of `$hostname` or `$port` in gophermap lines with - current host information. +(CGI compliance)[docs/CGI.md] -- User supplied footer text appended to gophermaps and directory listings. +(Gopher specific information)[docs/GOPHER.md] -- File remapping support via regex, of format: - - `/virtual/file -> /actual/file` - - e.g. scripts within `cgi-bin` to the root directory: - `/(?P