Gemini Spec Fixes

Published 2019-08-12

I've updated my server to conform to the new spec with regards to accepting the full URL in the request, and returning the new status codes. It should now be in full compliance (at least as far as I can tell). I've been playing around with a bunch of different URL formats and it seems to not crash at least. I also wrote a dumb 50-line client program to facilitate my testing.

One thing that I noticed is that python's URL parser expects URLs without a scheme to be prefixed with a "//" according to RFC 1808. I suppose this makes sense, if I provide a url like "localhost/", how would the parser know the difference between these two interpretations:

  1. host = (not provided)

 path = "localhost/"

  1. host = "localhost"

 path = "/"

It certainly threw me for a loop though.

My todo list is now to start playing around with all of the fun stuff:

Proxy Information
Original URL
gemini://mozz.us/journal/2019-08-12_gemini_spec_fixes.gmi
Status Code
Success (20)
Meta
text/gemini; lang=en
Capsule Response Time
439.73881 milliseconds
Gemini-to-HTML Time
0.366053 milliseconds

This content has been proxied by September (3851b).