fix: add rel canonical to remote user profiles

This commit is contained in:
Julian Lam
2025-08-02 09:48:59 -04:00
parent 27d60a19f9
commit 8ce5498f23

View File

@@ -52,6 +52,10 @@ profileController.get = async function (req, res, next) {
if (meta.config.activitypubEnabled) { if (meta.config.activitypubEnabled) {
// Include link header for richer parsing // Include link header for richer parsing
res.set('Link', `<${nconf.get('url')}/uid/${userData.uid}>; rel="alternate"; type="application/activity+json"`); res.set('Link', `<${nconf.get('url')}/uid/${userData.uid}>; rel="alternate"; type="application/activity+json"`);
if (!utils.isNumber(userData.uid)) {
res.set('Link', `<${userData.url || userData.uid}>; rel="canonical"`);
}
} }
res.render('account/profile', userData); res.render('account/profile', userData);
@@ -174,5 +178,12 @@ function addTags(res, userData) {
type: 'application/activity+json', type: 'application/activity+json',
href: `${nconf.get('url')}/uid/${userData.uid}`, href: `${nconf.get('url')}/uid/${userData.uid}`,
}); });
if (!utils.isNumber(userData.uid)) {
res.locals.linkTags.push({
rel: 'canonical',
href: userData.url || userData.uid,
});
}
} }
} }