From 8fcf57dfadad7d5979893ae381abd2a160daf364 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Wed, 11 Apr 2018 14:41:03 -0400 Subject: [PATCH] stripped double relative path from og urls, #6442 --- src/meta/tags.js | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) 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; +}