thegcat@kif.rocks をWebFingerするには……
https://kif.rocks/.well-known/host-meta にアクセスして、https://toot.kif.rocks/.well-known/webfinger?resource={uri}を得る。
https://toot.kif.rocks/.well-known/webfinger?resource=acct:thegcat@kif.rocks を呼ぶ
この時、subject: "acct:thegcat@kif.rocks" と、 aliases: [
"https://toot.kif.rocks/@thegcat",
"https://toot.kif.rocks/users/thegcat"
], が得られる(html用とjson用のhrefがlinksで得られるので見るのはこっちか)
acctとしてのkif.rocksドメインと、uri(id)、urlの到達可能なtoot.kif.rocksドメインを区別する。前者がLOCAL_DOMAINで、後者がWEB_DOMAIN。
一つ前の投稿、不正確だったので書き直した。
このへんは
https://github.com/mastodon/documentation/blob/archive/Running-Mastodon/Serving_a_different_domain.md
に書いてあることと、WebFingerの規格や実装みて理解することはできるんだけど……
まーバグりやすいね。みんなこんなん期待通りに実装してくれるだろうか……。
Mastodonのサーバを運用する人が注意した方がいいTIPSみたいな感じで、
- acctのドメインと公開するドメイン(LOCAL_DOMAINとWEB_DOMAIN)を別に設定するのはできるだけ避ける
- 国際化ドメイン名(日本語などを使ったドメインなど)はできるだけ避ける(これはついでに)
という情報は出しておいた方がいいかもしれん。使えるけど、バグや非互換でハマるケースはあるから覚悟してな! っていう。
なお、Mastodonのリレー実装で大文字小文字でハマったこともあるw
一見、簡単なようだけど、ちゃんと正規化しないといろんな不具合がおきて大変なのだわ。