From 573a9c62281c31da71adc36c70b2d50de5fd73c2 Mon Sep 17 00:00:00 2001 From: silverwind Date: Fri, 22 May 2020 21:18:44 +0200 Subject: [PATCH] Fix webpack chunk loading with STATIC_URL_PREFIX (#11526) (#11542) Previously, we had only set __webpack_public_path__ to a path which caused webpack chunks to be loaded from the current origin which is incorrect when STATIC_URL_PREFIX points to another origin. This should fix the issue curretnly seen on gitea.com. --- web_src/js/publicpath.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/web_src/js/publicpath.js b/web_src/js/publicpath.js index 392c03e70..0e69479b5 100644 --- a/web_src/js/publicpath.js +++ b/web_src/js/publicpath.js @@ -1,7 +1,10 @@ -// This sets up webpack's chunk loading to load resources from the 'public' -// directory. This file must be imported before any lazy-loading is being attempted. +// This sets up the URL prefix used in webpack's chunk loading. +// This file must be imported before any lazy-loading is being attempted. +const {StaticUrlPrefix} = window.config; -if (document.currentScript && document.currentScript.src) { +if (StaticUrlPrefix) { + __webpack_public_path__ = StaticUrlPrefix.endsWith('/') ? StaticUrlPrefix : `${StaticUrlPrefix}/`; +} else if (document.currentScript && document.currentScript.src) { const url = new URL(document.currentScript.src); __webpack_public_path__ = url.pathname.replace(/\/[^/]*?\/[^/]*?$/, '/'); } else {