WebFinger Split-Domain Canary

This is a tiny self-contained ActivityPub actor/bot showcasing a split-domain WebFinger setup. It is equal parts interoperability demo, documentation, and feature advocacy.

Documentation

This is a short, quick and dirty WSGI script using Flask to showcase a scenario where a fediverse “handle” (the double-@ form, e.g. @alice@example.com) and the corresponding actor URI exist on different domains. This is entirely valid as far as WebFinger is concerned, and is supported at least partially by many popular fediverse platforms. However, some show the wrong domain on the public profile pages generated for the remote account. This demo is intended to make issues like that easier to identify and test.

It is provided in part to advocate for improved availability and reliability of split-domain WebFinger deployments, especially for ActivityPub platforms that need to parse and display actors on remote servers. Search for “@canary@correct.webfinger-canary.fietkau.software” to test your own server.

Released to the public under Creative Commons Zero 1.0. Do what you want with it!

The bird logo/avatar is a modified version of this OpenClipArt image. Special Thanks to Jeff Sikes (@box464@mastodon.social) for help with platform tests.

Webfinger_canary_profile

Screenshot of the WebFinger Split-Domain Canary ActivityPub profile, as displayed in Mastodon. Shows the avatar, profile name, and profile bio.

The Canary is an ActivityPub profile with a single post that can be shared in the fediverse. This is a screenshot showing how the profile is displayed in Mastodon. Under the avatar and to the right of the account name, the “correct” handle domain name is shown. Some other fediverse software will show the “wrong” domain instead.