Allow the favicon to be cached
The favicon is currently loaded directly by url. This commit changes it
to be loaded by file-loader. Note, the default vue webpack file loader
doesn't support ico file types (because it seems to expect to use a png
here), so add that to the file loader config.
This allows bmcweb [1] to provide caching headers for the favicon, and
avoid downloading a new favicon on every refresh.
Tested: Webui-vue loads, favicon in the network panel loads properly.
[1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/70644
Change-Id: I27e5b459ff8822294ac9273220111e9944e8d1e5
Signed-off-by: Ed Tanous <ed@tanous.net>
diff --git a/vue.config.js b/vue.config.js
index bd22674..e66d5d1 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -61,6 +61,14 @@
.rule('vue')
.use('vue-svg-inline-loader')
.loader('vue-svg-inline-loader');
+ config.module
+ .rule('ico')
+ .test(/\.ico$/)
+ .use('file-loader')
+ .loader('file-loader')
+ .options({
+ name: '[name].[contenthash:8].[ext]',
+ });
},
configureWebpack: (config) => {
config.plugins.push(