diff --git a/src/meta/tags.js b/src/meta/tags.js index babd1d5f9d..2f7e95ed3e 100644 --- a/src/meta/tags.js +++ b/src/meta/tags.js @@ -124,13 +124,13 @@ Tags.parse = function (req, data, meta, link, callback) { addIfNotExists(meta, 'property', 'og:title', Meta.config.title || 'NodeBB'); - var ogUrl = nconf.get('url') + (req.originalUrl !== '/' ? req.originalUrl : ''); + var ogUrl = nconf.get('url') + (req.originalUrl !== '/' ? stripRelativePath(req.originalUrl) : ''); addIfNotExists(meta, 'property', 'og:url', ogUrl); addIfNotExists(meta, 'name', 'description', Meta.config.description); addIfNotExists(meta, 'property', 'og:description', Meta.config.description); - var ogImage = Meta.config['og:image'] || Meta.config['brand:logo'] || ''; + var ogImage = stripRelativePath(Meta.config['og:image'] || Meta.config['brand:logo'] || ''); if (ogImage && !ogImage.startsWith('http')) { ogImage = nconf.get('url') + ogImage; } @@ -165,3 +165,11 @@ function addIfNotExists(meta, keyName, tagName, value) { meta.push(data); } } + +function stripRelativePath(url) { + if (url.startsWith(nconf.get('relative_path'))) { + return url.slice(nconf.get('relative_path').length); + } + + return url; +}