Autre que pour des raisons historiques, y a-t-il une raison pour avoir "www" dans une URL?
Dois-je créer une redirection permanente à partir de www.xyz.com
à xyz.com
, ou de xyz.com
à www.xyz.com
? Laquelle suggéreriez-vous et pourquoi?
L'une des raisons pour lesquelles vous avez besoin de www
ou d'un autre sous-domaine est liée à une bizarrerie de DNS et à l'enregistrement CNAME.
Supposons aux fins de cet exemple que vous exécutez un grand site et sous-traitez l'hébergement à un CDN (Content Distribution Network) tel que Akamai. En règle générale, vous configurez l'enregistrement DNS de votre site en tant que CNAME sur un akamai.com
adresse. Cela donne au CDN la possibilité de fournir une adresse IP proche du navigateur (en termes géographiques ou réseau). Si vous utilisiez un enregistrement A sur votre site, vous ne seriez pas en mesure d'offrir cette flexibilité.
La particularité du DNS est que si vous avez un enregistrement CNAME pour un nom d'hôte, vous ne pouvez pas avoir tout autre enregistrements pour ce même hôte. Cependant, votre domaine de premier niveau example.com
doit généralement avoir un enregistrement NS et SOA. Par conséquent, vous ne pouvez pas également ajouter un enregistrement CNAME pour example.com
.
L'utilisation de www.example.com
vous donne la possibilité d'utiliser un CNAME pour www
qui pointe vers votre CDN, tout en laissant les NS et SOA enregistrements sur example.com
. Le example.com
l'enregistrement aura généralement également un enregistrement A pour pointer vers un hôte qui redirigera vers www.example.com
en utilisant une redirection HTTP.
Remarque: Depuis la ratification et la mise en œuvre (par tous les navigateurs actuels, sauf éventuellement MSIE 11 , voir les commentaires) de RFC 6265 en 2011, ce qui suit n'est plus exact, car les cookies ne sont par défaut jamais définis sur des sous-domaines.
Historiquement , une bonne raison technique pour faire www.example.com
canonique était que les cookies d'un domaine principal (c'est-à-dire example.com
) ont été envoyés à tous les sous-domaines.
Donc, si votre site utilisait des cookies, ils seraient envoyés à tous ses sous-domaines.
Maintenant, cela a souvent du sens, mais c'est vraiment dangereux si vous souhaitez uniquement télécharger des ressources statiques car cela ne fait que gaspiller de la bande passante. Tenez compte de toutes les feuilles de style et des images de votre site Web: généralement, il n'y a aucune raison d'envoyer des cookies au serveur lorsque vous demandez une ressource d'image.
Une bonne solution consiste donc à utiliser un sous-domaine pour les ressources statiques, tel que static.example.com
, pour économiser la bande passante en n'envoyant pas de cookies. Toutes les images et autres téléchargements statiques peuvent être téléchargés à partir de là. Si vous utilisez maintenant www.example.com
pour le contenu dynamique, cela signifie que les cookies ne doivent être envoyés qu'à www.example.com
, pas à static.example.com
.
Si, toutefois, example.com
est votre site principal, puis les cookies seront envoyés à tous les sous-domaines, y compris static.example.com
.
Maintenant, cela n'est pas pertinent pour la plupart des sites, mais changer votre URL canonique plus tard n'est pas une bonne idée, donc une fois que vous vous êtes installé pour example.com
au lieu de www.*
, vous êtes fondamentalement coincé avec ça.
Une alternative consiste à utiliser une URL complètement différente pour les ressources statiques. Par exemple, Stack Overflow utilise sstatic.net
, YouTube utilise ytimg.com
etc. …
www
est un sous-domaine habituellement utilisé pour le serveur Web sur un domaine avec d'autres à d'autres fins telles que mail
etc. De nos jours, le paradigme de sous-domaine est inutile; si vous vous connectez à un site Web dans un navigateur, vous obtiendrez le site Web ou l'envoi de courrier au serveur utilisera son service de messagerie.
Utiliser www
ou non est une question de préférence personnelle. Des points de vue opposés peuvent être trouvés sur http://no-www.org/ et http://www.yes-www.org/ - cependant, je crois que www
n'est pas nécessaire et ajoute simplement plus de corruption à l'URI.
La plupart des serveurs envoient le même site de toute façon, mais ne redirigent pas. À des fins de référencement, choisissez-en un, puis demandez à l'autre de le rediriger. Par exemple, du code PHP pour ce faire:
if (preg_match('/www/', $_SERVER['SERVER_NAME'])) {
header("Location: http://azabani.com{$_SERVER['REQUEST_URI']}");
exit;
}
Cependant, certaines raisons favorisant l'utilisation d'un sous-domaine www
faites par d'autres répondeurs sont également très utiles, comme ne pas envoyer de cookies à des serveurs statiques (crédit Konrad Rudolph ).
C'est assez historique. Il était une fois que nous avions www.example.com, ftp.example.com, images.example.com, uk.example.com etc., ce qui semblait être une chose logique à faire et fournissait une méthode simple pour répartir la charge entre les serveurs.
Ces jours-ci, je vais simplement aller sur example.com pour le site principal et rediriger la version www vers cela.
Les les outils Google pour les webmasters vous permettent de spécifier votre domaine préféré , alors assurez-vous de les utiliser également.
Voir également:
https://stackoverflow.com/questions/1109356/www-or-not-www-what-to-choose-as-primary-site-name
https://stackoverflow.com/questions/1884157/to-www-or-not-to-www
Si vous allez avoir des sous-domaines à d'autres fins (blog par exemple), vous voudrez peut-être différencier les sites et avoir un préfixe www
pour le site normal. À part cela, la seule chose importante est de choisir l'un des deux et de s'y tenir (pour des raisons de référencement).
Je ferais le premier. La convention www
vient des premiers jours de HTTP où www.cmu.edu et cmu.edu étaient très probablement des machines différentes.
Voici une autre perspective mineure.
En n'ayant pas www, il y a un inconvénient mineur en ce qui concerne les médias textuels, qu'ils soient imprimés ou en ligne, et que cela soit reconnu comme une adresse Web. Sur papier, il est généralement assez évident que example.com est une adresse Web, et vous pouvez ajouter des touches de style pour le mettre en évidence. Mais du texte brut en ligne? Pas si facile. Les chances sont que si vous envoyez un message en texte brut - que ce soit un e-mail, un Tweet, une publication sur Facebook, SMS ou autre), il reconnaîtra une URL commençant par http: // ou www. Mais gagnée " t reconnaître un sans aucun de ceux-ci. Donc, pour faire de l'URL dans un lien cliquable, vous devez mettre www. ou http: // sur le devant, et des deux, www. est plus court, moins maladroit à regarder à et plus facile à lire.