обновлённый webfinger
почти пять лет назад я писал о том, как добавить для своего почтового адреса поддержку WebFinger. С тех пор он довольно сильно изменился. Во-первых, опубликовали официальную RFC7033 WebFinger. Во-вторых, переключились с XML на модный JSON. В-третьих, начали использовать в нескольких ещё менее известных системах
впрочем, суть его осталась та же, и добавить поддержку WebFinger всё так же просто: достаточно отдавать небольшой JSON-файлик по адресу https://example.com/.well-known/webfinger?resource=acct:email@example.com
. Чуть сложности добавляет только то, что сам емейл теперь — параметр в адресе (и некоторые клиенты вопреки стандартам не экранируют в нём спецсимволы).
nginx:
include mime.types;
types { application/jrd+json jrd; }
location = /.well-known/webfinger {
if ($arg_resource = 'acct%3Aemail%40example.com') {
rewrite .* /.well-known/email@example.com.jrd break;
}
}
email@example.com.jrd:
{
"subject": "acct:email@example.com",
"aliases": ["https://example.com/"],
"links": [
{
"rel": "http://webfinger.net/rel/avatar",
"href": "https://example.com/favicon.svg"
},
{
"rel": "http://webfinger.net/rel/profile-page",
"href": "https://example.com/"
}
]
}
здесь для примера приведены только два типа ссылок, можно использовать и все остальные существующие значения rel