#web #discovery #server #webring #indieweb

app faery-ring

一个无JavaScript的极轻量级服务器端环网实现

2 个不稳定版本

0.2.0 2022年2月8日
0.1.0 2022年2月8日

#3 in #webring

自定义许可

17KB
198

法耶瑞环

一个无JavaScript的极轻量级服务器端环网实现

环网是一种构建社区的方式,特别受业余网站的热捧。其工作原理如下:环网的每个成员都包含一个指向“下一个网站”的链接和一个指向“上一个网站”的链接,形成一个类似“环”的结构,因此得名。任何进入其中一个网站的访客都可以通过自然的方式导航到环网中的其他页面。

尽管它们最初被用于搜索引擎时代之前的流量驱动,但现在许多人认为环网是一种在网络上构建温馨社区的方式,或者是一种重振网络作为可以探索的地方的激动人心的感觉的方式。

法耶瑞环在哪里发挥作用?为了使环网在增长和变化过程中更容易维护,许多人使用简单的脚本来协调成员页面。法耶瑞环允许您无需JavaScript即可完成此操作

如果您...

  • 想开始一个环网,但您或您的环网中的某个人真的不喜欢JavaScript
  • 您环网上的某个成员页面因为托管限制无法使用JavaScript
  • 您想尽可能简化新成员加入您环网的过程
  • 您有自己的专用服务器或虚拟专用服务器(VPS)

如果您...

法耶瑞环是为一个非常特定的用例而设计的,这可能与您的需求不一定相符。如果您认为法耶瑞环不适合您,那也没关系!我们鼓励您查看其他项目,比如也许是一个类似的项目 onionring.js,它使用静态JavaScript文件进行工作。如果您知道其他应列在这里的环网项目,请提交问题,我们也可以将其添加进来!

您想要默认提供更多功能

法耶瑞环默认只提供“下一个”链接和“上一个”链接。像索引页面、预制的小工具和脚本集成这样的功能您需要自己提供。

您没有地方托管动态网页内容

法耶瑞环需要一个运行其网络服务器的地方,许多环网管理员(即运行环网的人)可能只有提供静态文件的能力

您的服务器不是Linux系统

法耶瑞环没有理由不能在其他操作系统上运行,但遗憾的是,我无法进行测试,因此我无法保证它将正常工作,您可能需要自己构建二进制文件。如果您对此没有异议,那么您可以继续前进!

您或环网成员是非合作公司、警察或计划做坏事

《精灵圈》采用CNPL和FAFOL双重许可,禁止将精灵圈用于一些令人不悦的目的。如果你担心你的目的可能被认为令人不悦,首先,问问自己为什么你认为可能会这样,你是否应该这样做。然后,查看CNPL网站获取更多详情。如果你觉得这些都太多了,你也可以在FAFOL(随便乱搞弄清楚许可证)下使用许可证——这是一个与MIT许可证非常相似的许可证。FAFOL也限制了不道德的使用,只要你的使用总体上是好的(不是邪恶的),你就没问题。

我该如何使用它??

运行精灵圈相当简单。首先,在某处创建一个.txt文件,并用你圈中的所有网站填充它,每行一个。省略协议(https://)和尾随斜杠,使其看起来像这样

www.dragoness.space
emii.gay
garlic.garden/onionring
queerings.gay
getonflop.xyz

一个限制:如果一个网站是另一个网站的子字符串,较短的网站必须先列出。例如,如果你有unix.pubunix.pub/~userunix.pub必须在列表中高于unix.pub/~user

现在,使用你刚刚创建的.txt文件作为第一个参数运行精灵圈二进制文件(或docker镜像)

# Run from the binary
faery-ring /path/to/domains.txt

# Or run using Docker
docker run -v /path/to/domains.txt:/domains.txt -p 3243:3243 alch0emi/faery-ring

你也可以使用-p <port>标志来告诉faery-ring你想要绑定哪个端口。如果你不指定,它将选择端口3243。无论如何,现在你可以将你的web服务器指向精灵圈了!下面的配置是针对Caddy的,但任何支持反向代理的web服务器都可以工作!

your.web.site {
    reverse_proxy /next/* localhost:3243
    reverse_proxy /prev/* localhost:3243
}

现在你的webring成员可以在他们的页面上添加到https://your.web.site/next/\<their\_domain> https://your.web.site/prev/\<their\_domain>的链接,以构建圈。例如,运行在www.dragoness.space的页面的人会添加到https://your.web.site/next/www.dragoness.spacehttps://your.web.site/prev/www.dragoness.space的链接。garlic.garden/onionring可以使用/next/garlic.garden/next/garlic.garden/onionring。如果不止一个网站托管在garlic.garden上,则第二种形式是必需的。

下载

  • Linux二进制文件可以从发布页面获取
  • Docker Hub上有一个docker镜像,地址是alch0emi/faery-ring:v0.1.0
  • 如果你的系统上安装了cargo,可以使用cargo install --git https://fem.mint.lgbt/Emi/faery-ring.git安装faery ring

使用faery-ring的webrings

你是否运行了一个使用faery ring的webring?我很乐意知道,如果你愿意,我会把它添加到列表中!💜

依赖项

~2.4–3.5MB
~92K SLoC