Lets Gopher!

2018-06-14

如何搭建一个 Gopher 服务器 ? 不是 Golang 的 Gopher 啦

什么是 Gopher?

一种网络协议,早于万维网之前,上世纪流行过一段时间。
使用70端口
我的Gopher: gopher://gopher.rumia.xyz

Gopher 服务器

几个 Gopher 服务器

pygopherd

是最简单的一个 Gopher 服务器,github 上有 Debian(/Ubuntu)的包

gophernicus

我正在使用他,支持动态 GopherMap,似乎是使用 CGI 脚本进行数据处理

motsognir

很强大的一个服务器,支持 PHP 和 CGI 脚本

配置文件

/etc 下似乎有写配置文件(懒的写了….每种服务器稍微有点不一样
/var/gopher 下就是 root 目录了,gophermap 文件用于配置 gopher 的结构
gopher 并不是用 html 显示,而是 gophermap
以 gophernicus 为例
ps:其实你看以看 gophermap 就知道他有多简单了,只有简单的语法 他支持动态显示,gophermap 其实变成了可执行文件,所以文本要以 i 开头,这是与 pygopherd 不同的地方

项目类型:
0	文本文件
1	Gopher子菜单
2	CCSO Nameserver
3	Gopher服务器返回的错误代码
4	BinHex编码文件(主要用于Macintosh电脑)
5	DOS文件
6	uuencoded文件
7	Gopher 搜索(含有一个submit)
8	Telnet
9	二进制文件
+	镜像或备用服务器
G	GIF文件
I	图像文件
T	Telnet 3270
h	HTML文件
i	文本信息
s	音频(wav)

动态考虑用 CGI 配合 python 脚本使用
推荐一个脚本(基于 gophernicus),是一个快速模板,包含一个 ”访客留言“ 是通过 “7 Gopher 搜索”实现的,让你了解整个动态 gophermap 运行过程:
https://github.com/Kivior/hn-gopher

如何访问 Gopher 网络

curl 似乎还支持 gopher 下载?
你可能需要 lynx,或者 IE6.0 以下浏览器。
或者三 floodgap 搭建的代理网络(有 firefox 插件)
http://gopher.floodgap.com/gopher/gw?a=gopher%3A%2F%2Fgopher.rumia.xyz

追记

在想,现在互联网发展的可真快,我的意思并不是什么网上购物、移动支付,亦或是什么 Flutter、TypeScript,而是更加赛博一点的关于互联网本身的故事,仅仅 30 年,万维网已是末年,很难想象现在的小孩子都不怎么使用浏览器或是搜索引擎,信息全靠以 APP 形式出现的基于时间的世界流(worldstream)来提供,是的,一直热衷于唱衰万维网的 Wired 在 10 年前左右全是这种观点,万维网确实要死了,现在的我们可以透过时间线去记录,回溯任何一段信息,你所见的,你想听的,新闻,知识,闲聊,统统涌入名为世界流的长河中,唯有万维网在静悄悄的守候那千千万万的孤魂,只留下一个端口成为下一个“短信”和“电话”。当我第一次看见连线的那篇“万维网已死,互联网万岁”的文章,还是在互联网考古时,一种叫做 Gopher 的 web 形式所构筑的网站里。古老,但富有赛博,万维网的归宿就如同当初的 Gopher 那样。