J'analysais ma page Web en utilisant un outil en ligne où je voyais que mon statut HTTP pour mon nom de domaine racine www.example.com
entraînait une redirection 301 vers www.example.com/index.html
.
Je préférerais beaucoup que mon domaine racine renvoie un résultat 200 à la place - mais j'ai configuré mes redirections 301 il y a longtemps et je ne sais plus trop comment modifier mon code pour résoudre ce problème. J'ai remarqué que le domaine racine principal de mon site Web disparaissait des SERP (remplacé, dans la plupart des cas, par une page de sous-domaine) et je crains que cette redirection 301 puisse affecter la capacité de classement de mon domaine racine.
Mon fichier .htaccess
commence par ce code:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_Host} ^example.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]
Suivi de mes redirections individuelles.
Ma page index.html
contient le code:
<link rel="canonical" href="http://www.example.com">
Et j'ai des outils Google pour les webmasters configurés pour que toutes les instances de pages non-www apparaissent comme leur version www.
Une partie de ce code est-elle redondante? Que dois-je changer pour obtenir un résultat HTTP 200 pour ma racine?
RewriteRule ^$ /index.html [L]
Cela indiquera à Apache de traiter le résultat sur example.com
comme un résultat sur example.com/index.html
sans redirection (l'URL reste la même).
Le code que vous avez déjà (les 2 dernières lignes) indique à Apache de ne pas rediriger l'URL avec le préfixe www en une URL précédée de www (par exemple, http://example.com/somepage.html
=> http://www.example.com/somepage.html
).