diff --git a/public/cdn/Hosted-Cloudflare-#F48120.svg b/public/cdn/Hosted-Cloudflare-#F48120.svg new file mode 100644 index 000000000..8d364ec7f --- /dev/null +++ b/public/cdn/Hosted-Cloudflare-#F48120.svg @@ -0,0 +1 @@ +Hosted: CloudflareHostedCloudflare \ No newline at end of file diff --git a/public/cdn/Hosted-ESA-#FF6A00.svg b/public/cdn/Hosted-ESA-#FF6A00.svg new file mode 100644 index 000000000..c9fa31051 --- /dev/null +++ b/public/cdn/Hosted-ESA-#FF6A00.svg @@ -0,0 +1 @@ +Hosted: ESAHostedESA \ No newline at end of file diff --git a/public/cdn/Hosted-EdgeOne-#00a3ff.svg b/public/cdn/Hosted-EdgeOne-#00a3ff.svg new file mode 100644 index 000000000..ccf6d7468 --- /dev/null +++ b/public/cdn/Hosted-EdgeOne-#00a3ff.svg @@ -0,0 +1 @@ +Hosted: EdgeOneHostedEdgeOne \ No newline at end of file diff --git a/src/components/Footer.astro b/src/components/Footer.astro index 39d68dfca..84ad75062 100644 --- a/src/components/Footer.astro +++ b/src/components/Footer.astro @@ -79,11 +79,43 @@ try { valueSpan.innerText = '检测中...'; div.appendChild(valueSpan); - return { div, valueSpan }; + const iconImg = document.createElement('img'); + iconImg.className = 'server-icon h-5 ml-1 hidden'; + iconImg.alt = 'Server Icon'; + div.appendChild(iconImg); + + return { div, valueSpan, iconImg }; } function updateEntryDisplay(elements, server) { - elements.valueSpan.innerText = server || "未知"; + const { valueSpan, iconImg } = elements; + + if (server) { + const serverLower = server.toLowerCase(); + let iconSrc = null; + + if (serverLower.includes('esa')) { + iconSrc = '/cdn/Hosted-ESA-#FF6A00.svg'; + } else if (serverLower.includes('edgeone')) { + iconSrc = '/cdn/Hosted-EdgeOne-#00a3ff.svg'; + } else if (serverLower.includes('cloudflare')) { + iconSrc = '/cdn/Hosted-Cloudflare-#F48120.svg'; + } + + if (iconSrc) { + iconImg.src = iconSrc; + iconImg.classList.remove('hidden'); + valueSpan.classList.add('hidden'); + } else { + valueSpan.innerText = server; + iconImg.classList.add('hidden'); + valueSpan.classList.remove('hidden'); + } + } else { + valueSpan.innerText = "未知"; + iconImg.classList.add('hidden'); + valueSpan.classList.remove('hidden'); + } } async function checkServer(url) {