Quick Fix: Excessive DNS-Prefetch Links
TL;DR
Problem: Archive page has 400+ dns-prefetch links (most from blogroll/reader)
Solution: Changed to page-specific hints
Result: Archive now has ~5-10 relevant hints instead of 400+
What Changed
✅ Each page now gets hints only for external domains on that specific page
✅ No more site-wide hint lists injected everywhere
✅ Blogroll links no longer pollute other pages
Do You Need to Change Anything?
No! This works automatically. But you can optionally exclude domains:
Optional: Exclude Reader Domains
Add to your markata.toml:
[resource_hints]
exclude_domains = [
"reader.waylonwalker.com",
]
This will prevent reader links from generating hints (useful if you don't want any hints for blogroll domains).
Will This Slow Down Builds?
No significant impact: - Adds ~100-200ms to build time (for 100-500 pages) - You'll barely notice it - Much better user experience makes it worth it
What If I Want the Old Behavior?
You can disable auto-detection and manually configure hints:
[resource_hints]
auto_detect = false
# Manually add critical domains
resource_hints.domains
domain = "cdn.jsdelivr.net"
hint_types = ["dns-prefetch"]
Next Steps
- Test it: Build your site and check an archive page
- Optionally: Add
exclude_domainsif you want to filter reader links - Done: Enjoy cleaner HTML and better performance!
Verification
Check hint count on a page:
# Count dns-prefetch hints on archive page
grep -c 'rel="dns-prefetch"' markout/archive/index.html
# View actual hints
grep 'dns-prefetch' markout/archive/index.html
Expected results: - Archive: ~5-10 hints (was 400+) - Blog posts: ~4-8 hints (was 400+) - Blogroll: Still high, but legitimate (those links ARE on that page)
See Also
- Resource Hints Guide - Full documentation
- Performance Guide - Overall optimization tips
examples/resource_hints.toml- Configuration examples