简体   繁体   中英

DNS prefetching of subdomains

Do I have to prefetch a subdomain separately?

Eg when I have <link rel="dns-prefetch" href="//example.com"> do I need an additional tag for //static.example.com as well?

I've made the following test: first created simple HTML page

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <link rel="dns-prefetch" href="//example.com/">     
  </head>
  <body>
    <a href="http://example.com">Test link</a>
    <a href="http://sub.example.com">Test link 2</a>
  </body>
</html>

For the domain and subdomain for which I own dns nameserver. Then I cleaned dns cache and opened this page in firefox private window. I observed in the logs of my dns nameserver that only request for "example.com" was made and no requests for subdomains.

Then I changed the page as follows:

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <link rel="dns-prefetch" href="//example.com/">     
    <link rel="dns-prefetch" href="//sub.example.com/">
  </head>
  <body>
    <a href="http://example.com">Test link</a>
    <a href="http://sub.example.com">Test link 2</a>
  </body>
</html>

Again cleared dns cache and opened this page in firefox private window. Now I observed that dns requests we made for both domain and it's subdomain.

So I can conclude that yes - you have to prefetch subdomains separately.

You have to prefetch every subdomain separately.

It is how DNS works. You ask for name, it answers back, it knows nothing about "subdomains" it's just a name.

nslookup google.com gives you answers for google.com only, no subdomains.

nslookup www.google.com gives www.google.com only, no top-level domains.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM