Gemini server
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Aaron Fischer bd0555069e Strip path from root
If there is a path (the URL path) specified under paths in the
configuration, which points to a root (a physical folder on the
filesystem), this path should not be attached to the root. This fix will
do that. It strips the path from the root.

Example configuration:

hosts:
  localhost:
    paths:
      -
        path: /a
        root: public/aroot
      -
        path: /
        root: public

Filesystem:
+ public
  + index.gmi
  + aroot
    + index.gmi
2 years ago
.gitignore Initial commit 3 years ago
.gitlab-ci.yml Initial commit 3 years ago
CONFIGURATION.md Migrate to code.rocketnine.space 2 years ago
LICENSE Initial commit 3 years ago
PROPOSALS.md Fix cache attribute parsing 3 years ago
README.md Migrate to code.rocketnine.space 2 years ago
config.go Require trailing slash when specifying directory path 3 years ago
go.mod Migrate to code.rocketnine.space 2 years ago
go.sum Migrate to code.rocketnine.space 2 years ago
main.go Print access log by default 3 years ago
serve_command.go Support logging requests 3 years ago
serve_fcgi.go Update dependencies 2 years ago
serve_file.go Support directory listing via HTTPS 3 years ago
serve_https.go Strip path from root 2 years ago
serve_proxy.go Support logging requests 3 years ago
server.go Set minimum TLS version to 1.2 2 years ago
util.go Support directory listing 3 years ago

README.md

twins

Donate

Gemini server

Warning: The twins configuration format is still under development. Breaking changes may be made.

This page is also available at gemini://twins.rocketnine.space

Features

  • Serve static files
    • Detect content type
    • Specify content type for files with matching extension
    • List files and directories (when enabled)
  • Reverse proxy requests
  • Serve Gemini content via HTTPS
    • Pages are converted automatically by gmitohtml
  • Reload configuration on SIGHUP

Proposals

twins includes features that are not yet part of the Gemini specification. See PROPOSALS.md

Download

twins is written in Go. Run the following command to download and build twins from source.

go get code.rocketnine.space/tslocum/twins

The resulting binary is available as ~/go/bin/twins.

Configure

See CONFIGURATION.md

Support

Please share issues and suggestions here.

Dependencies