2016-04-28 21 views
8

Devo precaricare un sottodominio separatamente?Prefetching DNS dei sottodomini

E.g. quando ho <link rel="dns-prefetch" href="//example.com"> ho bisogno di un ulteriore tag per //static.example.com pure?

risposta

10

Ho fatto il seguente test: prima creato semplice pagina HTML

<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> 

Per il dominio e sottodominio per il quale ho proprio DNS server dei nomi. Quindi ho pulito la cache di dns e ho aperto questa pagina nella finestra privata di firefox. Ho osservato nei registri del mio server dei nomi dns che è stata effettuata solo la richiesta di "example.com" e nessuna richiesta di sottodomini.

Poi ho cambiato la pagina come segue:

<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> 

Ancora una volta cancellata la cache DNS e ha aperto la pagina in Firefox finestra privata. Ora ho osservato che le richieste DNS che abbiamo fatto per entrambi i domini e il suo sottodominio.

Quindi posso concludere che sì - devi precedere i sottodomini separatamente.

+0

Grazie per la risposta! – enyce12

5

Devi precaricare ogni sottodominio separatamente.

È come funziona il DNS. Chiedi il nome, risponde, non sa nulla di "sottodomini" è solo un nome.

nslookup google.com fornisce risposte solo per google.com, senza sottodomini.

nslookup www.google.com fornisce solo www.google.com, nessun dominio di primo livello.

+2

Questo è vero, ma ancora dns-prefetch è una funzionalità relativa al browser, e il browser _could_ (in teoria) controlla la pagina e prefetch i sottodomini di alcuni domini che hai impostato in dns-prefetch. Ovviamente i browser non lo fanno, ma comunque. – Evk