fix(branding): point HTML favicon link at /favicon.ico (the real Safari fix)
index.html hardcoded <link rel=icon href=/favicon-32x32.png>. When the HTML declares a favicon link, the browser uses it and NEVER requests /favicon.ico — so Safari showed the bundled default and our dynamic backend route was never hit (direct /favicon.ico was correct, but the tab wasn't). DynamicFavicon's JS swap is exactly what Safari ignores. Point the link at /favicon.ico (backend dynamic route) + add apple-touch-icon, no type/sizes so the response content-type wins. Now the configured favicon shows from first paint in every browser, Safari included.
This commit is contained in:
+9
-1
@@ -2,7 +2,15 @@
|
|||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8" />
|
<meta charset="UTF-8" />
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png" />
|
<!-- Point the favicon at the backend's dynamic /favicon.ico route so the
|
||||||
|
admin-configured branding favicon is used from the very first paint,
|
||||||
|
in every browser. CRITICAL: a hardcoded href here (e.g. the bundled
|
||||||
|
/favicon-32x32.png) makes the browser use THAT and never request
|
||||||
|
/favicon.ico — Safari then shows the default and ignores the JS that
|
||||||
|
DynamicFavicon uses to swap it. No type/sizes so the byte stream
|
||||||
|
(png/ico/svg) is honoured via the response content-type. -->
|
||||||
|
<link rel="icon" href="/favicon.ico" />
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
||||||
<!--
|
<!--
|
||||||
Static fallback title + Open Graph defaults (#521).
|
Static fallback title + Open Graph defaults (#521).
|
||||||
|
|||||||
Reference in New Issue
Block a user