[tech] Doppio: Gemini server in Java
Sean Conner
sean at conman.org
Sun Jan 3 03:43:17 GMT 2021
It was thus said that the Great Bill Havanki once stated:
> Greetings,
>
> I’d like to announce my own take on a Gemini server implementation, which
> I’ve named Doppio.
>
> https://github.com/bhavanki/doppio/
Cool!
> I implemented it in Java as a fun side coding project, but I hope it’s
> useful for others. It supports the usual good stuff:
>
> * static files, including finding index files
> * CGI with most meta-variables from RFC 3875, plus a bunch from Apache
> mod_ssl
For CGI support, I set the REQUEST_METHOD to "" (since RFC-3875 madates
it---others have set it to "GET"), and instead of the Apache variables for
TLS, I used:
TLS_CIPHER
TLS_VERSION
TLS_CLIENT_HASH
TLS_CLIENT_ISSUER
TLS_CLIENT_SUBJECT
TLS_CLIENT_NOT_BEFORE
TLS_CLIENT_NOT_AFTER
TLS_CLIENT_REMAIN
and I think others that support CGI have done similar. I like that you used
"Certificate" for AUTH_TYPE (as I have done) and the subject name for
REMOTE_USER (as most others have done). I also added the following:
GEMINI_DOCUMENT_ROOT
GEMINI_SCRIPT_FILENAME
GEMINI_URL_PATH
GEMINI_URL
and again, some others support some of the above. Sadly, the CGI
discussions seem to die out quickly on this list.
Anyway, nice job.
-spc
More information about the Gemini
mailing list