The Common Gateway Interface for Gemini The Common Gateway Interface can easily be adapted for the new Gemini protocol. In fact, the document you are reading right now is genreated from a program via the Common Gateway INterface, aka CGI. The specification for CGI, RFC-3875, is pretty straightforward, and if you strip out the HTTP specific bits, it was rather easy to implement. CGI Environment Variables GATEWAY_INTERFACE=CGI/1.1 GEMINI_DOCUMENT_ROOT=/home/spc/projects/gemini/non-checkin/gemini.conman.org GEMINI_SCRIPT_FILENAME=/home/spc/projects/gemini/non-checkin/gemini.conman.org/cgi GEMINI_URL=gemini://gemini.conman.org/cgi GEMINI_URL_PATH=/cgi LANG=en_US.UTF-8 LC_COLLATE=C PATH=/usr/local/bin:/usr/bin:/bin QUERY_STRING= REMOTE_ADDR=64.149.155.184 REMOTE_HOST=64.149.155.184 REQUEST_METHOD= SCRIPT_NAME=/cgi SERVER_NAME=gemini.conman.org SERVER_PORT=1965 SERVER_PROTOCOL=GEMINI SERVER_SOFTWARE=GLV-1.12556/1 CGI Argument List lua /home/spc/projects/gemini/non-checkin/gemini.conman.org/cgi