| |
|
| :: |
| Auteur |
Message |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 15131
|
Posté le: Sam Mai 20, 2006 4:23 pm Sujet du message: Forcer le www dans les URLs |
|
|
J'ai pensé qu'il pourrait être utile de lancer un sujet sur le www dans les URLs.
Le WWW :
Tout d'abord, www.example.com est un authentique sous domaine de example.com, même s'il est, la plupart du temps définit par défaut avec les mêmes paramètres que le domaine principale.
Le problème qui se pose ici est que le domaine principal est lui aussi tout à fait fonctionnel, example.com et www.example.com renverront à la même page si rien n'est fait.
Votre référencement risque d'en pâtir, car ces deux URLs sont des duplicates de la même page, et pire, par défaut, toutes les URLs de votre site auront ce duplicate. Parce que les deux URLs, avec ou sans le www, marcheront. Le sou domaine www pointe sur le même host que le domaine.
Certain Bots testent des URL en retirant le www sans qu'il ait eût besoin de suivre un lien de cette sorte. Et des utilisateurs pourraient également poster de tels liens. Si vous ne faites rien à ce sujet, vous avez de bonnes chances de trouver des duplicates de vos pages dans les résultats des moteurs de recherches et de finalement vous retrouver avec un moins bon Page Rank (PR).
La solution est d'utiliser une redirection http 301 pour forcer l'utilisation d'une seule des deux possibilités.
Que choisir ?
Internet est fait de standard, les Moteurs de Recherche et leur Bots les suivent, ou pour le moins sont construit en relation étroite avec ces standards. Le choix évident est ici de toujours conserver le www dans vos URLs.
Et cela ne concerne pas seulement ce qu'en feront les roBots, qui associent "forcement" le www à un domaine principale et non un sous domaine (et donc plus important ?).
Standards ? www.example.com vs example.com . Lequel des deux est le plus efficace selon vous ?
PhpBB n'est pas le seul script favorisant l'usage du www, pratiquement tous les formulaires capable de créer des liens automatiquement le feront en utilisant une Expression Régulière basé sur le www, pas de www, pas de lien actif automatique
Il faudrait écrire http://example.com , ce qui, vous en conviendrez, est moins susceptible de se produire.
Certains sites s'arrangent même pour conserver le www dans les URL de leurs sous domaines, mais cela peut rallonger les URLs, ce qui est aussi un paramètre important.
Les solutions :
mod Rewrite Apache :
Comme souvent pour gérer les URLs, le mod rewrite d'Apache est une solution parfaite.
L'idée est ici de s'assurer que le www est présent dans l'URL demandée, et de, si ce n'est pas le cas, la rediriger, en utilisant un header http 301, vers la même URL pourvue du www. LLes utilisateurs ne remarqueront pratiquement rien, la redirection se fait avant l'exécution de php, et les Bots "sauront" que cette dernière URL est la seule à prendre en compte.
Différentes approches sont possibles, et dépendent des spécificités de votre hébergement.
Tout d'abord, nous pouvons vérifier que le www est ou n'est pas présent en testant l'égalité avec www.example.com ou l'inégalité avec example.com.
Ensuite, comme le "." est un caractère spéciale pour le mod rewrite, nous devrions l'échapper avec un "\", mais j'ai observé des cas pour lesquels cela posait certains problèmes.
Ces différences dans la façon d'appréhender des rewriterules valables pour toutes les url d'un site, ré écrites ou pas, proviennent la plupart du temps des personnalisation d'Apache et du mod Rewrite réalisé par les hébergeur.
Au final, il est nécessaire de s'assurer que la redirection fonctionne dans tous les cas, et d'effectuer quelques tests si cela ne fonctionne pas directement.
Les RewriteCond et RewriteRule proposées doivent évidement être mise dans le .htaccess se trouvant à la racine de votre site, juste après :
Première méthode : URL = example.com.
| Code: | RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*) http://www.example.com/$1 [QSA,L,R=301] |
Notez que si ces règles ne remplissent pas leur office sur votre serveur, vous pouvez essayer de retirer le "\", le $ et le [NC] dans la RewriteCond.
L'avantage de cette méthode est que vous ne risquez pas de bloquer l'accès à des sous domaines qui se trouveraient hébergés au même endroit.
Deuxième méthode : URL !=www.example.com.
| Code: | RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^(.*) http://www.example.com/$1 [QSA,L,R=301] |
La même remarque s'applique quant aux "\", $ et [NC] dans la RewriteCond.
Si pour quelques raisons cette variante serait la seul fonctionnelle pour votre site et que vous ayez des sous domaines pointant vers le même dossier, vous pouvez alors modifier la RewriteCond de cette façon :
| Code: |
RewriteCond %{HTTP_HOST} !^(www|sub1|sub2|sub3)\.example\.com$ [NC] |
Et conservez la RewriteRule telle qu'elle. Tous ce qui ne se trouverais pas dans la liste entre parenthèses sera alors redirigé, par http 301, vers www.example.com/uri_demandée
Redirection PHP :
Pour ceux qui n'auraient pas la chance d'utiliser le serveur Apache avec le mod Rewrite actif, deux solutions :
1) Changez d'hébergement
2) Essayer ce qui suit
| Code: | $req_uri = $_SERVER['REQUEST_URI'];
$req_domain = $_SERVER['HTTP_HOST'];
$sub = substr( $domaine, 0, strpos($domaine,".") );
if ($sub != 'www')
{
header("Status: 301 Moved Permanently", false, 301);
header("Location: http://www.example.com/$req_uri");
exit();
} |
Attention, cela peut engendrer des erreurs si ce code n'est pas appliqué assez tôt dans le code de votre page. Le bon endroit pour cela pour phpBB devrait être le fichier common.php, juste avant le "?>".
Vous pouvez bien entendu appliquer ces principes pour ne pas utiliser le www dans l'URL de votre domaine, bien qu'il y ait beaucoup de chances que cela soit moins efficace pour le référencement de votre site.
|
_________________ Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________
Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche
Dernière édition par dcz le Mer Mar 07, 2007 10:12 am; édité 1 fois |
|
| Revenir en haut de page |
|
 |
|
 |
zibus
Inscrit le: 01 Juin 2006 Messages: 26 Localisation: Gard
|
Posté le: Jeu Juin 01, 2006 8:59 pm Sujet du message: Re: Forcer le www dans les URLs |
|
|
Si je gère le www par un alias, est ce que c'est bon quand même.
Je peux accéder à mon forum avec ou sans le www |
_________________ Bricoforum
Le forum du bricolage et de la rigolade |
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 15131
|
Posté le: Jeu Juin 01, 2006 9:06 pm Sujet du message: Re: Forcer le www dans les URLs |
|
|
| zibus a écrit: | Si je gère le www par un alias, est ce que c'est bon quand même.
Je peux accéder à mon forum avec ou sans le www |
L'idée ici est bien de forcer un choix unique. Dans le cas d'un domaine, il est presque toujours mieux de forcer le préfixe www dans les url, pour les sous domaines, lorsque c'est possible, c'est mois évident.
Théoriquement, le préfixe www est un plus, en pratique, il ne faut pas trop rallonger ses URL, c'est une question de goûts.
Par contre ce qui est toujours valable, c'est de s'assurer que l'on ne se retrouve pas avec un duplicate par URL a cause du préfixe www . Il vaut mieux toujours s'assurer qu'une seule "version" de l'URL n'est accessible.
Dans tous les cas, changer n'est pas un problème, vu qu'une fois en place, la redirection http 301 va maintenir les Backlinks et le PageRank de tes pages.
Car si non, tu risques de voir fleurir les duplicates au fur et à mesure de la vie de ton site.
++ |
_________________ Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________
Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche |
|
| Revenir en haut de page |
|
 |
zibus
Inscrit le: 01 Juin 2006 Messages: 26 Localisation: Gard
|
Posté le: Ven Juin 09, 2006 8:54 am Sujet du message: Re: Forcer le www dans les URLs |
|
|
Salut dcz.
Je veux que l'url http://www.bricoforum.net soit redirigée sur http://bricoforum.net
Est ce que le code suivant est bon
| Code: |
RewriteCond %{HTTP_HOST} ^www.bricoforum\.net$ [NC]
RewriteRule ^(.*) http://bricoforum.net/$1 [QSA,L,R=301] |
|
_________________ Bricoforum
Le forum du bricolage et de la rigolade |
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 15131
|
Posté le: Ven Juin 09, 2006 9:07 am Sujet du message: Re: Forcer le www dans les URLs |
|
|
C'est l'idée, mais ça ne marche pas chez toi.
Essai :
| Code: | RewriteCond %{HTTP_HOST} !^bricoforum\.net$ [NC]
RewriteRule ^(.*) http://bricoforum.net/$1 [QSA,L,R=301] |
Comme tu l'as lu, il y de nombreuses variantes dans ce cas, qui ne marchent pas toutes chez tout le monde.
donc essai aussi :
| Code: | RewriteCond %{HTTP_HOST} !^bricoforum.net [NC]
RewriteRule ^(.*) http://bricoforum.net/$1 [QSA,L,R=301] |
et en cas :
| Code: | RewriteCond %{HTTP_HOST} !^bricoforum.net [NC]
RewriteRule (.*) http://bricoforum.net/$1 [QSA,L,R=301] |
Dans tous les cas ou va trouver
Note qu'il vaut mieux que tu n'utilises qu'un unique .htaccess pour que cette règle se propage bien. |
_________________ Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________
Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche |
|
| Revenir en haut de page |
|
 |
jcg11290 phpBB SEO Team


Inscrit le: 19 Juin 2006 Messages: 416 Localisation: Carcassonne(11)
|
Posté le: Mer Juil 05, 2006 2:55 pm Sujet du message: Re: Forcer le www dans les URLs |
|
|
Bonjour,
J'ai constaté dans que dans les urls reprises par les moteurs j'avais :
-clic-nature.info/forum/
et
-www.clic-nature.info/forum
si je modifie le .htaccess (à la racine du site) de cette manière : | Code: | RewriteCond %{HTTP_HOST} ^clic-nature\.info$ [NC]
RewriteRule ^(.*) http://www.clic-nature.info/$1 [QSA,L,R=301] | est-ce correct.. ?
Merci..
J.Cl.  |
|
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 15131
|
Posté le: Mer Juil 05, 2006 4:05 pm Sujet du message: Re: Forcer le www dans les URLs |
|
|
Dans le principe et la syntaxe oui, après, comme je l'ai dit, cette redirection a beaucoup de variantes possibles qui ne marchent pas toutes sur tous les serveurs.
Il faut donc essayer.
Si celle là ne marche pas direct (portail et forum), essai de mettre ça par exemple :
| Code: | RewriteCond %{HTTP_HOST} ^clic-nature\.info [NC]
RewriteRule ^(.*) http://www.clic-nature.info/$1 [QSA,L,R=301] |
ou même ça si ça ne suffit pas :
| Code: |
RewriteCond %{HTTP_HOST} ^clic-nature.info [NC]
RewriteRule ^(.*) http://www.clic-nature.info/$1 [QSA,L,R=301] |
Je ne fait que rendre la RewriteCond moins stricte, donc, si celle que tu as posté marche, c'est la meilleur à garder, si non, dans l'ordre, il faut essayer.
Il faut aussi mettre ces deux ligne juste après
| Code: | Options +FollowSymlinks
RewriteEngine on
RewriteBase / |
dans le .htaccess situé à la racine du domaine et de préférence ne pas ajouter de rewriterules dans des sous dossiers.
PS oublie pas de faire un petit Hors sujet pour ce soir, ça a bien marché jusqu'à présent je trouve
++ |
_________________ Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________
Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche |
|
| Revenir en haut de page |
|
 |
jcg11290 phpBB SEO Team


Inscrit le: 19 Juin 2006 Messages: 416 Localisation: Carcassonne(11)
|
Posté le: Mer Juil 05, 2006 4:29 pm Sujet du message: Re: Forcer le www dans les URLs |
|
|
Re,
Mon .htaccess pourrait être comme ceci pour un 1er essai..
| Code: | DirectoryIndex portal.php index.php index.html
RewriteCond %{HTTP_HOST} ^clic-nature\.info$ [NC]
RewriteRule ^(.*) http://www.clic-nature.info/$1 [QSA,L,R=301]
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
#########################################################
# PHPBB SEO REWRITE RULES #
#########################################################
# AUTHOR : DCZ http://www.phpbb-seo.com/
# STARTED : 01/2006
#####################################################
# FORUMS PAGES
########################
# FORUM PROTECTION RULE
RewriteRule ^forum/.+/([^/]+\.html)$ /forum/index.php [R=301,L]
# CATEGORIES
RewriteRule ^forum/.+-vc([0-9]+)\.html$ /forum/index.php?c=$1 [QSA,L]
# PAGINATED FORUM
RewriteRule ^forum/.+-vf([0-9]+)-([0-9]+)\.html$ /forum/viewforum.php?f=$1&start=$2 [QSA,L]
# FORUM
RewriteRule ^forum/.+-vf([0-9]+)\.html$ /forum/viewforum.php?f=$1 [QSA,L]
# PAGINATED TOPIC
RewriteRule ^forum/topic([0-9]+)-([0-9]+)\.html$ /forum/viewtopic.php?t=$1&start=$2 [QSA,L]
# TOPIC
RewriteRule ^forum/topic([0-9]+)\.html$ /forum/viewtopic.php?t=$1 [QSA,L]
# POST
RewriteRule ^forum/post([0-9]+)\.html$ /forum/viewtopic.php?p=$1 [QSA,L]
#PROFILES
RewriteRule ^forum/membre([0-9]+)\.html$ /forum/profile.php?mode=viewprofile&u=$1 [QSA,L]
# END PHPBB PAGES
#########################################################
# MX GG_SITEMAPS REWRITE RULES #
#########################################################
# phpBB
RewriteRule ^forum/sitemaps.xml$ /forum/sitemap.php [L]
RewriteRule ^forum/forum-sitemap-([0-9]+).xml$ /forum/sitemap.php?fid=$1 [L]
RewriteRule ^forum/sitemap-forum.xml$ /forum/sitemap.php?forum [L]
#####################################################
|
J.Cl.
PS : J'y pense au HS..  |
|
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 15131
|
|
| Revenir en haut de page |
|
 |
jcg11290 phpBB SEO Team


Inscrit le: 19 Juin 2006 Messages: 416 Localisation: Carcassonne(11)
|
Posté le: Mer Juil 05, 2006 4:50 pm Sujet du message: Re: Forcer le www dans les URLs |
|
|
| dcz a écrit: | | dcz a écrit: |
Il faut aussi mettre ces deux ligne juste après
| Code: | Options +FollowSymlinks
RewriteEngine on
RewriteBase / |
|
Après donc, là tu les a mis avant
++ |
Je ne comprend pas, elles sont bien après.. | Code: | DirectoryIndex portal.php index.php index.html
RewriteCond %{HTTP_HOST} ^clic-nature\.info$ [NC]
RewriteRule ^(.*) http://www.clic-nature.info/$1 [QSA,L,R=301]
Options +FollowSymlinks
RewriteEngine On
RewriteBase / |
ou alors en fin du fichier...
J.Cl.  |
|
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 15131
|
Posté le: Mer Juil 05, 2006 5:07 pm Sujet du message: Re: Forcer le www dans les URLs |
|
|
Ah lol, c'est le coup du sous entendu, ces deux lignes, c'est celles que tu ajoutes
donc il faut mettre :
| Code: | DirectoryIndex portal.php index.php index.html
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^clic-nature\.info$ [NC]
RewriteRule ^(.*) http://www.clic-nature.info/$1 [QSA,L,R=301] |
Car il faut bien démarrer le moteur de réécriture d'URL pour lui demander de bosser
++ |
_________________ Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________
Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche |
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 15131
|
|
| Revenir en haut de page |
|
 |
jcg11290 phpBB SEO Team


Inscrit le: 19 Juin 2006 Messages: 416 Localisation: Carcassonne(11)
|
Posté le: Jeu Juil 06, 2006 6:39 am Sujet du message: Re: Forcer le www dans les URLs |
|
|
Bonjour,
Voici comment j'ai créé le fichier .htaccess.. (1ère méthode complete)
| Code: | DirectoryIndex portal.php index.php index.html
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
#
RewriteCond %{HTTP_HOST} ^clic-nature\.info$ [NC]
RewriteRule ^(.*) http://www.clic-nature.info/$1 [QSA,L,R=301]
#
#########################################################
# PHPBB SEO REWRITE RULES #
############################################# |
A priori ça à l'air de fonctionner mais comment peut-on en être certain à 100%...
J.Cl.
PS: Pour le petit HS.. c'est bon..  |
|
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 15131
|
|
| Revenir en haut de page |
|
 |
jcg11290 phpBB SEO Team


Inscrit le: 19 Juin 2006 Messages: 416 Localisation: Carcassonne(11)
|
Posté le: Jeu Juil 06, 2006 10:08 am Sujet du message: Re: Forcer le www dans les URLs |
|
|
Bonjour,
J'avais testé les liens comme toi, je présume c'est ce que tu as fait, et à chaque fois je retombe bien sur -www.clic-nature....
donc OK.. c'est parfait.. la suite dans les autres posts..
Merci..
J.Cl.
PS: Merci aussi pour la promotion de grand sorcier du HS.. mais moins certain pour dimanche..  |
|
|
| Revenir en haut de page |
|
 |
|
|
| Navigation |
Autres sujets de discussion |
|
|
|
|
|
|
|