最小構成のActivityPubサーバ
最小構成でMastodonなどに認識されるサーバを構成するには、まず外部からアクセス可能なドメインが必要である。
(windymelt.iconおそらくHTTPS接続が必須)
これに加えて以下のエンドポイントを実装する必要がある:
GET /nodeinfo/2.1
rinsuki.iconnodeinfo のパス自体は /.well-known/nodeinfo にパスが書いてあればどこでもいいような?
lacolaco.icon 自作の実装では忘れていたけど、なくても問題ない(Mastodon, Misskeyで確認)
GET /host-meta
windymelt.icon 実はなくてもいいらしい?
sola4.plb.icon 最小構成ならなくても問題ない (少なくとも対 Mastodon, Misskey なら)
GET /.well-known/webfinger
発信専用のサーバを立てたい場合などはPOSTに対して405などを返しておけばよい
sola4.plb.icon ↑ は GET のことでしょうか? POST は最低限 Follow 周りの対応が必要なはず……
さらに、他のサーバが認識できる投稿を表示するには、以下のエンドポイントを実装する必要がある:
仕様上は必須(MUST)だが、実装としてはこれがなくても認識されることが多い
Mastodon では過去の投稿数を調べる程度に使用、Misskey はアクセスすらしない
参考文献
nyarla.icon ActivityPub のページにも貼りましたが、必要最低限の実装についてすごく分かりやすかったです hr.icon
windymelt.icon 手元で実験するのめちゃくちゃ大変だった。ActivityPub.iconサーバ開発するときの便利テクとかないのだろうか?毎回デプロイして本番ドメインで起動するといったことをやっています。情報取得に失敗すると一定期間そのサーバからは相手にされなくなるので、あまり失敗できないのも大変。
windymelt.icon これプログラミング課題に丁度良いよね、という会話を同僚とした