Gopher
Quick context
- created in 1991 (University of Minnesota) because scientists were fed up with FTP.
- still relevant today: fast loading times, low hardware requirements, stateless = no commercial endeavors
- hierarchical structure: files and folders and that's all
Protocol
Debug with curl
curl gopher://gopher.floodgap.com:70
Example:
0Does this gopher menu look correct? /gopher/proxy gopher.floodgap.com 70
1Getting started with gopher, software, more /gopher gopher.floodgap.com 70
Warning
Each line is tab-separated
Char | Explaination |
---|---|
0 | First character = service type (0: file, 1: directory, i: menu info) |
Does this... | label |
/gopher/proxy/ | selector string (pathname) |
gopher.floodgap.com | domain name |
70 | port |
line end |
Querying
- search servers / dynamical generation do exist ofc: a search server returns a directory listing matching the keywords
- flask-gopher (has session mechanisms - ex: savegame for zork)
Questions
gopher+ download files? utf8 ? ansi escape characters? ansi art? reference the same file at multiple locations ?
gopher://theunixzoo.co.uk/1/the-guardian