Pourquoi insérer des fichiers statiques (CSS, images, JavaScript, ECC) dans un sous-domaine?


29

Pourquoi tant de grands et de petits sites insèrent des fichiers statiques (CSS, images, JavaScript, ECC) dans un sous-domaine comme media.example.comou s2.static.example.com?

Quels sont les avantages? Pourquoi pas juste un répertoire comme example.com/media/?

Réponses:


24

Je vois au moins trois (bonnes) raisons possibles:

  • Utiliser une autre machine pour diffuser le contenu statique
    • Y compris certains CDN
  • Utilisez un autre serveur Web pour diffuser le contenu statique
    • Quelque chose de plus léger et plus rapide
    • Pas besoin d'un serveur PHP / .NET / JAVA complet pour servir du contenu statique!
  • L'utilisation d'un autre nom de domaine signifie que vous ne pourrez pas utiliser les cookies utilisés sur le domaine principal

C'est ce qui se fait sur StackOverflow si je me souviens bien


15

Je pense que la principale raison est les cookies.

Des cookies seront envoyés avec chaque demande , disons si vous avez 2 Ko de données de cookies et chargez 20 images sur une page.

Cela représente 40 Ko de données supplémentaires , multipliez cela par le nombre de pages vues en un mois, et vous pourriez être surpris de la quantité de bande passante que vous avez perdue dans quelque chose d'inutile, et la bande passante n'est pas gratuite ...

En outre, les cookies définis sur le domaine de premier niveau, sont envoyés à travers toutes les demandes faites à n'importe quel sous-domaine, dans ces cas, il est même recommandé d'acheter un nouveau domaine pour y héberger les composants statiques, dans un domaine sans cookie .

Par exemple, StackOverflow utilise sstatic.net, Yahoo utilise yimg.com, YouTube utilise ytimg.com, Amazon utilise images-amazon.com, etc.

Jetez un œil à ceci:


8

Pour ajouter à certaines des réponses ci-dessus: certains navigateurs Web ne peuvent télécharger que deux fichiers simultanément à partir de n'importe quel domaine.

Au service de contenu statique d'un autre nom d'hôte (ou les noms - par exemple a.domain, b.domain, c.domain) permet à ces anciens navigateurs à télécharger plusieurs fichiers en parallèle.


2

... utilisez des domaines sans cookie pour les composants.

Lorsque le navigateur fait une demande d'image statique et envoie des cookies avec la demande, le serveur n'a aucune utilisation de ces cookies. Ils ne créent donc que du trafic réseau sans raison valable. Vous devez vous assurer que les composants statiques sont demandés avec des demandes sans cookie. Créez un sous-domaine et hébergez-y tous vos composants statiques.

Cet avis est tiré des meilleures pratiques de Yahoo pour accélérer votre site Web .


0

Tout simplement parce que votre demande http sera plus petite et que le serveur fonctionnera rapidement et que le fichier demandé sera donné dans un temps très court, ce qui conduira finalement au chargement de page le plus rapide


Cela n'ajoute rien que les autres réponses ne disent pas déjà. Vous ne dites même pas pourquoi la demande est plus petite (en raison de l'absence de cookies), donc cette réponse est pire que beaucoup d'autres.
Stephen Ostermiller
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.