Des codes pour la redirection .htaccess

mahdivitche

WRInaute impliqué
Bonjour a tous,

voila j'ai regroupé plusieurs code de redirection .hatacces et je veux partager avec vos :


*** rediriger un nom de domaine avec leur page vers un autre
Code:
RewriteEngine On
RewriteRule ^(.*)$ http://www.noveaunomdomaine.com/$1 [R=301,L]


*** rediriger site sans www. vers site avec www : ( pour éviter le duplicate contenu )
Code:
RewriteEngine On 
RewriteCond %{HTTP_HOST} !^www\.nomdoamine\.com [NC] 
RewriteRule (.*) http://www.nomdoamine.com/$1 [QSA,R=301,L]


*** rediriger index.html , index.php.... vers racine de site ( aussi pour éviter le duplicate contenu )
Code:
RewriteEngine On 
RewriteCond %{THE_REQUEST} ^(GET|POST|HEAD)\ (/.*)?/index.(htm|html|php|asp|shtml)
RewriteRule ^(.*)index.(htm|html|php|asp|shtml)$ /$1 [R=301,L]


*** rediriger un ancien page vers un nouvelle page ( pour éviter les erreurs 404 )
Code:
RewriteEngine On 
RewriteRule ancienpage.html http://www.nomdomaine.com/nouvellepage.html [R=301]


*** rediriger un dossier et leur contenu vers un autre nouveau dossier ( pour éviter les erreurs 404 )
Code:
RewriteEngine On
RewriteRule ^ancien/(.*)$ http://www.nomdomaine.com/nouveaudossier/$1 [R=301,L]


/**************************** les pages format exemple.php?id=5 ----> exemple-5.html *************** /
Code:
RewriteEngine On 
RewriteRule ^(.*)-([a-z-]+)-([0-9]+)\.html$ exemple.php?id=$2 [L]

/**************************** les pages format exemple.php?id=5&cat=10 ----> exemple-5-10.html *************** /
Code:
RewriteEngine On 
RewriteRule ^(.*)-([a-z-]+)-([0-9]+)-([0-9]+)\.html$ exemple.php?id=$3&cat=$4 [L]


/**************************** convertir l'extension de fichiers php en html *************** /
Code:
RewriteEngine On 
RewriteRule ^(.*)\.html $1\.php [L]
( le format des liens sera exemple.html alors que le nom de la page est exemple.php



Bien sur il y'a des autres code a vos de nos donné vos code et aussi vos remarque ;)


Merci
 

saypee

WRInaute passionné
Bonjour et merci mahdivitche, c'est pratique de tout avoir sur un seul topic, bonne idée.
+1 reco ;)
 

honolulu

WRInaute impliqué
Code:
RewriteEngine off

pour ne pas hériter des redirections pour un répertoire donné :wink:
Très très bonne initiative que tu as eue là :wink:
 

detectimmobilier

WRInaute passionné
Tu n'aurais pas la même chose pour ceux qui n'ont pas de serveur apache et ne peuvent donc pas utiliser le .htaccess :?:
 

JanoLapin

WRInaute accro
Bravo et merçi pour l'initiative mahdivitche. C'est tellement évident qu'on se emande pourquoi personne ne l'avait fiat auparavant

+1
 

CeBe2

WRInaute discret
Une reco pour ce topic, parce qu'il le vaut bien ;)
(et accessoirement parce qu'il m'a sauvé la mise)
 

lv

Nouveau WRInaute
très bonne initiative en effet, merci à toi je vais m'en faire un petit mémo :)
 

mahdivitche

WRInaute impliqué
Bonjour , et Merci pour vos aussi,

****** des remarques :

nickargall a dit:
Bonjour
Code:
RewriteEngine On
ne doit apparaître qu'une fois, avant l'écriture des règles.


**** des exemples : ( voila 5 exemples je trouve dans ce forum pour mieux comprend )

*********************************************************** exemple 1 **********************************

Niurath a dit:
Bonjour je dois faire une 301 sur un dossier et tout ce qu'il contient actuellement elle ne marche

que pour forum-dossier/index.php et je veux qu'elle marche pour tout.
Possible ?

Réponse :

** si tu veut rediriger tous les page d'un dossier vers les page d'un nouveau dossier qui prend le même nom

Code:
RewriteEngine On
RewriteRule ^forum-dossier/(.*)$ http://www.le-saxophone.fr/dossiers/$1 [R=301,L]

*** si tu veut rediriger tous les page d'un dossier vers le racine d'un autre dossier :

Code:
RewriteEngine On
RewriteRule ^forum-dossier/(.*)$ http://www.le-saxophone.fr/dossiers/ [R=301,L]


*********************************************************** exemple 2 **********************************

flobonhomme a dit:
Bonjour à tous,


J'ai donc besoin d'avoir des Url de la forme http://www.monsite.fr/#/blabla.html
qui appel la page physique http://www.monsite.fr/blabla.php

Merci bonne journée.

Réponse :

voila le code :

Code:
RewriteEngine On
RewriteRule ^\#/(.*)\.html $1\.php [L]

*************************************** exemple 3 ******************************************

caviar a dit:
je voudrai faire des règles simples

1 - si l'url après le ndd contient cat- alors je redirige vers page=accueil&idcat=$1
2 - si l'url après le ndd contient commentaires- alors je redirige vers page=addcomments&id=$1


Réponse par @forty :

Code:
RewriteRule ^cat-(.*)$ index.php?page=accueil&idcat=$1 [L,NC]
RewriteRule ^commentaires-(.*)$ index.php?page=addcomments&id=$1 [L,NC]

*********************************** exemple 4 *******************************
monbototo a dit:
j'aimerai rediriger http://www.anciensite.com vers http://www.nouveausite.com de façon permanente, mais sauf le

dossier "wanewsletter" ainsi que tous les sous-dossiers et fichiers qu'il contient.

Réponse par @HawkEye

Code:
RewriteCond %{REQUEST_URI} !wanewsletter/(.*)$
RewriteRule (.*) http://www.nouveausite.com/$1 [QSA,R=301,L]

NB: La règle fait une redirection page-à-page. Si tu veux simplement tout rediriger vers la racine du nouveau site,

il faut que tu enlèves le "$1"



***************************** exemple 5 *******************************************************
allann a dit:
est il possible de passez des variables de bases de données mysql dans une url de rewrting
actuellement j'ai des pages comme par exemple
http://www.monsite.com/annonce.php?idannonce=x ou x corespond à l'id de l'annonce
puis dans la balise meta title acheter votre <? $marque $modele ?>
j'aimerai si possible ecrire une regle qui transforme la page annonce.php en annonce-marque-modele.hml

Réponse par @nickargall :

Code:
rewritengine on
Rewriterule ^([0-9]+)-(.*)-(.*)\.html$ /annonce.php?idannonce=$1 [L]
 

Greendog

WRInaute occasionnel
Super topic mahdivitche, +1 reco !
J'ai une question par contre, qui n'a pas été traitée ici. :)

Il m'est arrivé de faire diverses url-rewriting (une dizaine dans le fichier .htaccess) et lorsque je cliquais sur un lien A sur le site, j'arrivais sur la page B. En gros, l'url rewriting des diverses urls étaient mélangé, j'ai réglé ce soucis en changeant l'ordre des lignes dans le fichier. Mais y'a-t-il une règle exact pour éviter ce genre de problème ?
 

mahdivitche

WRInaute impliqué
Greendog a dit:
Il m'est arrivé de faire diverses url-rewriting (une dizaine dans le fichier .htaccess) et lorsque je cliquais sur un lien A sur le site, j'arrivais sur la page B. En gros, l'url rewriting des diverses urls étaient mélangé, j'ai réglé ce soucis en changeant l'ordre des lignes dans le fichier. Mais y'a-t-il une règle exact pour éviter ce genre de problème ?

Bonjour,
et désolé pour le retard dans la réponse

j'ai eu déjà ce problème, et j'utilise la solution que t'utilise :mrgreen:

voila un topic qui parle plus de ça https://www.webrankinfo.com/forum/t/ordre-des-regles-dans-fichier-htaccess.84664/

donc aucun solution :wink:
 

emtakool

Nouveau WRInaute
Bonjour,

Je souhaiterais rediriger mon URL stream de radio de base http://xxx.xxx.com:0000 en http://xxxx.maradio.com

Après avoir crée un sous domaine interne , un ami avait place un fichier .htaccess avec deux lignes de codes dans ce dossier

La redirection marchait

Ceci étant suite à une mauvaise manip ce fichier est parti a la poubelle et cet ami n'est plus de ce monde ....

Merci de votre aide,

Et très bonne continuation
 

mahdivitche

WRInaute impliqué
Bonjour,
Merci darkjukka

j'ai remarque que ce poste est dormir :mrgreen:


bon je propose deux autres code :

**** J'essaye de modifier un URL du type -http://example.com/go.php?go=affiliate1 en URL du type : -http://example.com/go/affiliate1

>>> solution :
Code:
   RewriteEngine On
    RewriteRule ^(.*)/(.*)/$ go.php?go=$2 [L]


**** Protégeons nos fichiers images :

>>>
Code:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://www.votredomaine.net/.*$ [NC]
ReWriteRule .*\.(gif|png|jpe?g)$ - [F]


Merci de mettre vos code dans ce topic pour faire un bloc note des codes htaccess :wink:
 

CAPINTER

Nouveau WRInaute
Bonjour, j'ai une question

Je dois rediriger le trafic d'un site vers un autre (structure complétement différente)
Mais je voudrais rediriger des pages spécifiques.

Comment je peux ajouter des règles particulières avec ce code ?
RewriteEngine On
RewriteRule ^(.*)$ http://www.nouveaudomaine.fr/$1 [R=301,L]

oui dois je indiquer toutes les pages

RewriteEngine On
RewriteRule index.html http://www.nomdomaine.com/index.php [R=301]
RewriteRule ancienpage2.html http://www.nomdomaine.com/nouvellepage.html [R=301]
RewriteRule /dossier/ancienpage3.html http://www.nomdomaine.com/nouvellepage3.html [R=301]

merci et bonne journée
 

mahdivitche

WRInaute impliqué
Bonjour /// CAPINTER ///

tu doit crée deux fichier .htaccess :

*** pour ancien nom de domaine ajouter ce code :
Code:
RewriteEngine On
RewriteRule ^(.*)$ http://www.nouveaudomaine.fr/$1 [R=301,L]

( toutes les pages sera rediriger vers les pages de nouveau nom de domaine )

et pour le nouveau nom de domaine ajouter un fichier .htaccess avec les nouveau règles :

Code:
RewriteEngine On
RewriteRule ancienpage.html http://www.nouveaudomaine.com/nouvellepage.html [R=301]
....

( les ancien page de l'ancien nom de domaine sera rediriger vers les nouvelle page )
 

CAPINTER

Nouveau WRInaute
Bonjour, mahdivitche

merci pour l' info, concernant les 2 fichiers .htaccess :
A quel endroit dois je le placer le 2°, à la racine?

Ou sur le nouveau serveur ?
 

mahdivitche

WRInaute impliqué
CAPINTER a dit:
Bonjour, mahdivitche

merci pour l' info, concernant les 2 fichiers .htaccess :
A quel endroit dois je le placer le 2°, à la racine?

Ou sur le nouveau serveur ?


oui bien sur a la racine de les deux sites :wink:
 

piclab

Nouveau WRInaute
Bonjour,

Très bonne initiative que ce post, merci!

Malheureusement je ne crois pas que ce que je cherche s'y trouve.

J'ai un bidule.fr et un sousdomaine.bidule.fr.
J'ai un troisième site en production qui est lié aux autres.
Le tout est en rapport à mon activité en démarrage de photographe.
Il y aurai donc un portfolio pro, un blog, et une photothèque.

J'aimerai passer ce nouveau site en bidule.fr, passer le domaine actuel en nouveausousdomaine.bidule.fr.
Le sousdomaine.bidule.fr restant à sa place.

J'imagine que je devrai rediriger une par une les url bidule.fr indexées vers nouveausousdomaine.bidule.fr.
Ca je crois que j'ai compris.

Hélas c'est la seule chose dont je suis presque sûr (hein?).

Après, je ne sais pas comment gérer le reste du process, comme par exemple:
-actualisation des anciennes urls dans l'index GG. (supprimer+interdire par robots.txt? Ou bien ça se fera naturellement?)
-besoin d'un .htaccess dans le nouveau sousdomaine?
-déplacer les règles actuelles de bidule.fr dans nouveausousdomaine.bidule.fr?


Merci pour vos lumières, si d'aventure…
 

mahdivitchee

WRInaute discret
Bonjour

j'ai des problème dans la sécurité de mon petit espace hébergement, j'ai fait qu'il que recherche j'ai trouvé un bon code qui permet de protéger le serveur contre les hacker débutant :wink:

voila le code ( dans fichier .htacess )

Code:
RewriteEngine On 

RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})


###FILTRE CONTRE CERTAINS ROBOTS DES PIRATES

## EXCEPTION: TOUS LES ROBOTS MEMES ANONYMES OU BANNIS PEUVENT ACCEDER A CES FICHIERS

RewriteCond %{REQUEST_URI} !^/robots.txt

RewriteCond %{REQUEST_URI} !^/sitemap.xml

##

RewriteCond %{HTTP_USER_AGENT} ^-?$ [OR] ## ANONYMES

RewriteCond %{HTTP_USER_AGENT} ^[bcdfghjklmnpqrstvwxz\ ]{8,}|^[0-9a-z]{15,}|^[0-9A-Za-z]{19,}|^[A-Za-z]{3,}\ [a-z]{4,}\ [a-z]{4,} [OR] ## CEUX QUI INVENTENT DES NOMS AU HASARD 

RewriteCond %{HTTP_USER_AGENT} ^<sc|<\?|^adwords|@nonymouse|Advanced\ Email\ Extractor|almaden|anonymous|Art-Online|autoemailspider|blogsearchbot-martin|CherryPicker|compatible\ \;|Crescent\ Internet\ ToolPack|Digger|DirectUpdate|Download\ Accelerator|^eCatch|echo\ extense|EmailCollector|EmailWolf|Extractor|flashget|frontpage|Go!Zilla|grub\ crawler|HTTPConnect|httplib|HttpProxy|HTTP\ agent|HTTrack|^ia_archive|IDBot|id-search|Indy\ Library|^Internet\ Explorer|^IPiumBot|Jakarta\ Commons|^Kapere|Microsoft\ Data|Microsoft\ URL|^minibot\(NaverRobot\)|^Moozilla|^Mozilla$|^MSIE|MJ12bot|Movable\ Type|NICErsPRO|^NPBot|Nutch|Nutscrape/|^Offline\ Explorer|^Offline\ Navigator|OmniExplorer|^Program\ Shareware|psycheclone|PussyCat|PycURL|python|QuepasaCreep|SiteMapper|Star\ Downloader|sucker|SurveyBot|Teleport\ Pro|Telesoft|TrackBack|Turing|TurnitinBot|^user|^User-Agent:\ |^User\ Agent:\ |vobsub|webbandit|WebCapture|webcollage|WebCopier|WebDAV|WebEmailExtractor|WebReaper|WEBsaver|WebStripper|WebZIP|widows|Wysigot|Zeus|Zeus.*Webster [NC,OR] ## VRAIS ET FAUX ROBOTS NE RESPECTANT PAS LES REGLES

RewriteCond %{HTTP_USER_AGENT} ^curl|^Fetch\ API\ Request|GT\:\:WWW|^HTTP\:\:Lite|httplib|^Java/1.|^Java\ 1.|^LWP|libWeb|libwww|^PEAR|PECL\:\:HTTP|PHPCrawl|^Program\ Shareware|python|Rsync|Snoopy|^URI\:\:Fetch|WebDAV|^Wget [NC] ## BIBLIOTHEQUES / CLASSES HTTP DONT ON NE VEUT PAS. ATTENTION, CELA PEUT BLOQUER CERTAINES FONCTIONS DE VOTRE CMS. NE PAS TOUT EFFACER, MAIS CHERCHEZ LE NOM DE LA CLASSE HTTP CONCERNEE (DEMANDEZ AUX DEVELOPPEURS DE VOTRE CMS). CETTE LISTE BLOQUE 80% DES ROBOTS SPAMMEURS. IL FAUT LA CONSERVER.

RewriteRule (.*) - [F]



**** aussi un code pour protéger les partie administrateur ( avec htaccess, et .htpasswd )
.htaccess :

Code:
AuthUserFile /homez.133/sgitmgqb/www/chicauto-marrakech/admin/.htpasswd
AuthGroupFile /dev/null
AuthName ByPassword
AuthType Basic
<limit GET>
require valid-user
</Limit>

.htpasswd :

Code:
login:$1$.61.KOJr$YAVyiOPVPnCILVs0nymg20
/**** login : mot de passe crypté


Bonne journée
 

Az Se Irim

Nouveau WRInaute
mahdivitche a dit:
Bonjour /// CAPINTER ///

tu doit crée deux fichier .htaccess :

*** pour ancien nom de domaine ajouter ce code :
Code:
RewriteEngine On
RewriteRule ^(.*)$ http://www.nouveaudomaine.fr/$1 [R=301,L]

( toutes les pages sera rediriger vers les pages de nouveau nom de domaine )

et pour le nouveau nom de domaine ajouter un fichier .htaccess avec les nouveau règles :

Code:
RewriteEngine On
RewriteRule ancienpage.html http://www.nouveaudomaine.com/nouvellepage.html [R=301]
....

( les ancien page de l'ancien nom de domaine sera rediriger vers les nouvelle page )

Bonjour,

Cette manipulation chez moi me créé une erreur 500 sur l'ancien site, et ne redirige donc pas du tout vers le nouveau site.
 

toutatix

WRInaute discret
Bonjour à tous :)

Sauf erreur de ma part, mon cas de figure n'est pas traité ici.

Pour une installation de mutidomaine chez OVH j'ai besoin de faire pointer:

http://example.com/nomdedomaine vers http://nomdedomaine

1) Pouvez vous m'indiquer le code correspondant?

2) Question subsidiaire, devrais je mettre le code dans le htaccess de la racine de mon hébergement ou vers le dossier contenant le nouveau nom de domaine (http://example.com/nomdedomaine).

Merci.
 

mahdivitchee

WRInaute discret
toutatix a dit:
Bonjour à tous :)

Sauf erreur de ma part, mon cas de figure n'est pas traité ici.

Pour une installation de mutidomaine chez OVH j'ai besoin de faire pointer:

http://example.com/nomdedomaine vers http://nomdedomaine

1) Pouvez vous m'indiquer le code correspondant?

2) Question subsidiaire, devrais je mettre le code dans le htaccess de la racine de mon hébergement ou vers le dossier contenant le nouveau nom de domaine (http://example.com/nomdedomaine).

Merci.

Bonjour
et bienvenue dans le forum

dans ovh tu doit faire manuellement à partir de votre manager

voila les étapes :
>>> connecter à ton manager
>>> cliquez sur votre nom de domaine principale
>>> cliquez sur Hébergement
>>> Cliquez sur multi-domaines
>>> cliquez Creation
>>> et remplir les champs Multi-domaine et nom de dossier dans le qu'il tu as mit le site

>>> dans le menu à gauche cliquez domaine & dns
>>> cliquez Zone, Dns
>>> cliquez Type A
>>> remplir les zone A ( votre nom de domaine , et votre adresse ip )

bonne journée
 

pcamliti

WRInaute impliqué
RewriteCond %{THE_REQUEST} ^(GET|POST|HEAD)\ (/.*)?/index(.*)
RewriteRule ^(.*)index(.*)$ /$1 [R=301,L]

J'ai mis cette redirection en place mais lorsque j'accéde à des fichiers index dans des répertoires internes la redirection plante.

Comment puis-exclure les fichiers index de certains sous-dossiers de la racine ?

Merci
 

jhautier

Nouveau WRInaute
Bonjour,

J'ai une question importante sur la redirection .htaccess, mais j'ai du mal à trouver le code adapté:

J'ai des centaines de pages construites de la manière suivantes:

http://www.nomdemondomaine.com/nomdelacategorie/nomdelarticle.html

A ce jour les pages ont été renommées avec ajout d'une série de chiffres logicique (cf ci-dessous en rose) pour éviter les soucis de doublons des titres de page au niveau url rewriting:

http://www.nomdemondomaine.com/201009272512/nomdelacategorie/nomdelarticle.html

Est-il possible de faire une redirection pour indiquer aux moteurs de recherche les nouvelles pages sur lesquelles il doit faire pointer les anciennes pages (ce sont les mêmes, c'est simplement l'url rewriting qui modifie l'url) et ceci de manière massive et non page par page !

Merci par avance pour votre aide car je bloque la-dessus et cela me pénalise fortement au niveau des moteurs de recherche...

Jérôme
 

mfourcade

Nouveau WRInaute
Bonjour,

Je souhaiterai rediriger http://www.xxx.com/fr en http://www.xxx.com/fr/

Quelqu un a t il une idee ?

Cordialement,

Matt
 

rheh

Nouveau WRInaute
Bonjour,

Tout fonctionne a priori bien chez moi, mais je me demande si je ne peux pas améliorer mes .htaccess (oui, j'en ai plusieurs). Vos avis m'intéressent donc.

J'ai plusieurs domaines tous dirigés vers des répertoires différents, mais un seul m'intéresse ici: mon-nom.fr .

Mon domaine mon-nom.fr pointe vers le répertoire /mon-nom où j'ai un site en Flash. J'ai un sous-domaine blog.mon-nom.fr qui pointe /mon-nom/blog où j'ai un blog Wordpress.

Pour éviter un duplicate content, j'ai fait une redirection 301 avec ce .htaccess dans le répertoire /mon-nom :
Code:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.mon-nom\.fr [NC]
RewriteRule (.*) http://www.mon-nom.fr/$1 [QSA,R=301,L]

Et, à la racine de mon hébergement, j'ai un autre .htaccess qui permet le rewrite de Wordpress:
Code:
AddType x-mapp-php5 .php
AddHandler x-mapp-php5 .php
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Puis-je compiler les deux?

Merci d'avance pour vos avis.
 

rheh

Nouveau WRInaute
rheh a dit:
Bonjour,

Tout fonctionne a priori bien chez moi, mais je me demande si je ne peux pas améliorer mes .htaccess (oui, j'en ai plusieurs). Vos avis m'intéressent donc.

J'ai plusieurs domaines tous dirigés vers des répertoires différents, mais un seul m'intéresse ici: mon-nom.fr .

Mon domaine mon-nom.fr pointe vers le répertoire /mon-nom où j'ai un site en Flash. J'ai un sous-domaine blog.mon-nom.fr qui pointe /mon-nom/blog où j'ai un blog Wordpress.

Pour éviter un duplicate content, j'ai fait une redirection 301 avec ce .htaccess dans le répertoire /mon-nom :
Code:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.mon-nom\.fr [NC]
RewriteRule (.*) http://www.mon-nom.fr/$1 [QSA,R=301,L]

Et, à la racine de mon hébergement, j'ai un autre .htaccess qui permet le rewrite de Wordpress:
Code:
AddType x-mapp-php5 .php
AddHandler x-mapp-php5 .php
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Puis-je compiler les deux?

Merci d'avance pour vos avis.

En fait, en réfléchissant un peu, je crois avoir trouvé la solution que je cherchais. J'ai l'impression que tout fonctionne comme je le souhaitais. Je vous la soumets, si ça peut aider quelqu'un dans le même cas que moi.

J'ai donc placé le .htaccess suivant dans le répertoire /mon-nom :

Code:
AddType x-mapp-php5 .php
AddHandler x-mapp-php5 .php
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^www\.mon-nom\.fr [NC]
RewriteRule (.*) http://www.mon-nom.fr/$1 [QSA,R=301,L]
RewriteCond %{THE_REQUEST} ^(GET|POST|HEAD)\ (/.*)?/index.(htm|html|php|asp|shtml)
RewriteRule ^(.*)index.(htm|html|php|asp|shtml)$ /$1 [R=301,L]
RewriteBase /blog
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

Vous remarquerez que j'ai ajouté la règle pour rediriger index.html et compagnie vers la racine de site (toujours pour éviter le duplicate content).

En tout cas, merci pour topic vraiment très utile!
 

garancetosello

WRInaute discret
A l'aide ça ne marche pas de mon côté !!
SVP un coup de pouce...

Je vous explique :

LE BUT : redirection permanente 301

1IERE ETAPE
Je travaille sur un mac.
Le .htaccess n' existe pas sur textedit
DONC
Je l'enregistre en RTF puis je le renomme sur mon FTP.
Dans les préférences j'ai coché voir (la pièce jointe)
Est-ce juste? Car je me demande si ce n'est pas ça qui cloche!

Dois-je l'enregistrer sous une autre extension?

textedit.jpg


2IEME ETAPE

Le but est de renommer des pages pour les rendre plus pertinentes pour le référencement.
Mon ancienne page "/theme/plage/theme2.htm" va devenir "/theme/plage/faire-part-naissance.htm"

Je vais conserver pendant quelques mois (pour ne pas être pénalisée) mon ancienne page "/theme/plage/theme2.htm"

Donc dans mon fichier htaccess
j'ai rentré ces codes
Ca ne marche pas :
RedirectPermanent /theme/plage/theme2.htm http://www.mon-site.com/theme/plage/faire-part-naissance.htm

et ça non plus :
RewriteEngine On
RewriteRule /theme/plage/theme2.htm http://www.mon-site.com/theme/plage/faire-part-naissance.htm

J'ai comme message
Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, root@les-basics-nfrance.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

Apache/1.3.41 Server at 80.247.228.225 Port 80

Je pense que ca ne vient pas du code mais de mon enregistrement de mon fichier htaccess.

Si jamais, lequel des 2 codes cités ci dessus est le plus pertinent?
Bon faudrait-il déjà que ca marche.
Je deviens dingue...

Encore une petite chose :
Est ce qu'en plus de la redirection 301 je dois mettre dans mes anciennes pages les metas "refresh"?

Je vous remercie déjà pour vos réponses ...
Dans l'attente de vous lire.
Garance
 

neo666

Nouveau WRInaute
Bonjour,

J'ai regardé sur le forum mais je n'ai pas trouvé la réponse à ma question et/ou j'ai pas bien compris les réponses

J'ai un soucis avec la réécriture de mes url.

Toutes mes pages sont contenues dauns un dossier nommé "pages"

Dans mon fichier .htacces j'ai le code suivant :

Options +FollowSymlinks
RewriteEngine On
RewriteRule ^([^/]*)\.html$ /index.php?page=$1 [L]
RewriteRule ^([^.]*)([^/])$ /$1$2.html

Ca marche, tres bien. Ainsi si j'ai une page qui s'appelle test.php (cette page est situé dans le dossier pages) dans mon url j'aurai bien www.nomdemonsite.com/test

Le probleme se pose si j'ai un dossier (qui par exemple va s'appeler debat), ce dossier sera situé dans le dossier pages. Si j'ai une page qui s'appelle toto.php situé dans ce dossier, comment faire pour que dans mon URL s'affiche : www.nomdemonsite.com/debat/toto

d'avance merci pour votre aide
 

ejko

WRInaute discret
Bonjour,

Je suis chez OVH sur un mutualisé et j'ai un problème de redirection mais comme je ne connais pas les "termes techniques" je ne sais pas trop quoi chercher dans google
Je voudrais rediriger : /index.php?page=toto&lang=fr => /index.php?page=toto (supprimer la variable lang pour être tout à fait précis)

Merci d'avance
 

traivore

Nouveau WRInaute
Bonjour,
Et merci à vous tous pour ce forum que je viens de découvrir :D
Je viens d'essayer le code
Code:
RewriteEngine On
RewriteRule ^(.*)$ http://www.monnouvosite/$1 [R=301,L]
Et ça marche nikel! C'est vraiment super parce que le nouveau site est encore en construction et l'ancien que j'ai fermé à cause d'une grave erreur de ma part (j'ai supprimé les tables produit sans faire gaffe) était déjà pas mal référencé. Pour revenir à la redirection...J'aimerais savoir aussi s'il est possible que cette redirection soit "débarrassée" de toutes les erreur 404 qui plombaient l'ancien site.

Merci pour votre aide :wink:
 

aiel62

Nouveau WRInaute
/**************************** convertir l'extension de fichiers php en html *************** /
CODE: TOUT SÉLECTIONNER
RewriteEngine On
RewriteRule ^(.*)\.html $1\.php [L]

Bonjour,

Visiblement j'ai essayé ceci si on a un forum avec url rewrite phpbb seo après le forum fonctionne plus

J'aimerai savoir quelle règle ou ligne ajoutée pour dire,
ne pas réécrire" les url si elle existe déja
ou ne pas récrire les url des et sous répertoires /forum/

merci
 

eskalibar

Nouveau WRInaute
Bonjour;

Et merci pour ce tuto :)

Le code pour rediriger toutes les pages d'un dossier fonctionne bien :
RewriteEngine On
RewriteRule ^ancien/(.*)$ http://www.nomdomaine.com/nouveaudossier/$1 [R=301,L]


En revanche, j'ai un soucis avec la redirection d'une page vers une autre page (je suis chez ovh)
J'ai essayé ce code mais je tombe toujours sur une page d'erreur.

RewriteEngine On
RewriteRule ancienpage.html http://www.nomdomaine.com/nouvellepage.html [R=301]


Quelqu'un pourrait m'aider :?
 

aiel62

Nouveau WRInaute
le code pour rediriger les pages et celui ci

Redirect permanent /anciennepage.php www.nouvellepage.com/nom-page.php

bonne continuation
 

Lecuib

Nouveau WRInaute
Bonjour,
Mon problème est différent :
Je souhaite ouvrir un sous-domaine de mon site sur une page autre que index.php. J'utilise donc l'instruction directoryindex dans le .htacces
Code:
    DirectoryIndex page-accueil.php
Du coup la même page est accessible soit par http://www.sousdomaine.nomdedomaine.com/ ou http://www.sousdomaine.nomdedomaine.com/page-accueil.php
Je souhaite que seule le seconde url soit possible pour éviter le duplicate content. Auriez-vous la solution ?

A défaut j'ai mis à la place du DirectoryIndex une redirection 301 dans la page index pour aller sur page-accueil.php mais cette solution ne pénalise-t-elle pas le référencement ?
Merci par avance
 

PointdV

Nouveau WRInaute
Bonjour

Quel est le code pour modifier le nom de centaines de documents ainsi que leur extension, je m'explique

Certains documents sont
www.domaine/dossiers/articles/theme1/doc1.pdf

j'aimerai rediriger vers
www.domaine/fiches_articles_theme1_doc1.html
(le visiteur après pourra s'il le désire télécharger le pdf correspondant à savoir www.domaine/dossiers/doc1.pdf

Merci pour votre aide

Paul
 

allan62340

WRInaute discret
Qu'en est-il si je veux rediriger 50 pages de mon sites vers d'autres pages que j'ai recréé et les autres pages vers l'accueil ?
Exemple
Page 1.1 vers Page 2.1 (pour ça facile :) )
Page 1.2 vers Page 2.2 (pour ça facile :) )
Page 1.3 vers Page 2.3 (pour ça facile :) )

Et le reste de mes pages de mon site vers la nouvelle accueil , comment faire ?
 

philippe01150

Nouveau WRInaute
bonjour,
je suis un peu perdu et je viens la pour etre sur avant de faire des betises
j'ai mis sur mon site mes pages dans un dossier appele "pages" que j'aimerais supprime
et cela donne l'url suivant
http://www.nomdedomaine/pages/nom de page.php
et j'aimerais que cela devienne
http://www.nomdedomaine/nom de page.php

j'ai toutes les pages de mon site dans ce dossier "pages"
je pense utilise la formule suivante
RewriteEngine On
RewriteRule ^pages/(.*)$ http://www.nomdomaine.com/$1 [R=301,L]

ai-je bien modifie?
merci de votre reponse
amicalement
philippe
 

totomat

Nouveau WRInaute
Comment rediriger un page vers une autre page celles ci n'ayant pas une extension html ou php:
http://exemple.fr/page1 VERS http://exemple.fr/repertoire/page1
j'ai essayé avec
Redirect permanent /page1 http://exemple.fr/repertoire/page1?
mais l'URL réecrite comporte le point d'interrogation à la fin.
Si je l'enlève le ? dans la ligne du Htaccess l'url réecrite devient:
http://exemple.fr/repertoire/nouvellepage?params=nouvellepage
quelqu'un a t-il une solution?
Merci d'avance
 

totomat

Nouveau WRInaute
j'ai trouvé la solution pour ceux que ça intéresse
Code:
Redirect permanent ^page1$ http://localhost:8888/newrepertoire/page1?
 

totomat

Nouveau WRInaute
je cherche un code pour faire une redirection 301 dans le htaccess pour que
http://test.com/repertoire1/galerie/repertoire2 soit redirigé vers http://test.com/repertoire/photos-videos/repertoire2
quelqu'un a t_il une idée?
Merci
 

philippe01150

Nouveau WRInaute
totomat a dit:
Comment rediriger un page vers une autre page celles ci n'ayant pas une extension html ou php:
http://exemple.fr/page1 VERS http://exemple.fr/repertoire/page1
j'ai essayé avec
Redirect permanent /page1 http://exemple.fr/repertoire/page1?
mais l'URL réecrite comporte le point d'interrogation à la fin.
Si je l'enlève le ? dans la ligne du Htaccess l'url réecrite devient:
http://exemple.fr/repertoire/nouvellepage?params=nouvellepage
quelqu'un a t-il une solution?
Merci d'avance
re bonjour,
je reviens auxnouvelles car je suis toujours perdu si quelqu'un pouvais me dire comment faire
d'avance merci
cordialement
philippe
 

philippe01150

Nouveau WRInaute
totomat a dit:
Comment rediriger un page vers une autre page celles ci n'ayant pas une extension html ou php:
http://exemple.fr/page1 VERS http://exemple.fr/repertoire/page1
j'ai essayé avec
Redirect permanent /page1 http://exemple.fr/repertoire/page1?
mais l'URL réecrite comporte le point d'interrogation à la fin.
Si je l'enlève le ? dans la ligne du Htaccess l'url réecrite devient:
http://exemple.fr/repertoire/nouvellepage?params=nouvellepage
quelqu'un a t-il une solution?
Merci d'avance
re
je me suis trompe de message
voila le bon
amities
philippe
 

PifPafPouf

Nouveau WRInaute
Bonjour,

j'ai un hébergement (perso) chez OVH avec un freedom "monsite.fr".

j'ai acheté le ndd "monsite.com" chez un autre registrar et je l'ai fait pointé sur les dns de "monsite.fr"

Sur le ftp j'ai structuré les répertoires de cette façon:

-> monsite.fr sur /www/
-> monsite.com sur /www/monsite.com/

Je souhaite que lorsqu'on tape : "monsite.fr" "www.monsite.fr" "monsite.com" cela redirige vers "www.monsite.com" et de même pour les pages correspondantes.

Je suis parvenu à faire rediriger "monsite.com" vers "www.monsite.com" en plaçant un .htaccess dans /www/monsite.com/ :
Code:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^monsite\.com$ [NC]
RewriteRule ^(.*) http://www.monsite.com/$1 [QSA,L,R=301]

Mais pour rediriger "monsite.fr" et "www.monsite.fr" vers "www.monsite.com", j'ai tenté, sans succès, de placer un .htaccess à la racine de /www/
Code:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^monsite\.fr$ [NC]
RewriteRule ^(.*) http://www.monsite.com/$1 [QSA,L,R=301]

Par le manager d'OVH, j'ai déjà géré le multidomaine ("monsite.com", "www.monsite.com" pour les pointer sur /www/monsite.com). Mais concernant "monsite.fr" et "www.monsite.fr" impossible de passer par le multidomaine qui me renvoie sans cesse une erreur.

Quelqu'un peut-il m'éclairer?

Merci d'avance
 

zeb

WRInaute accro
tu fait pointer tous les domaines vers le même dossier et tu tente un truc du genre "tout ce qui n'est pas http://www.example.com"

Code:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.example\.com$ [NC]
RewriteRule ^(.*) http://www.example.com/$1 [QSA,L,R=301]
 

PifPafPouf

Nouveau WRInaute
zeb a dit:
tu fait pointer tous les domaines vers le même dossier et tu tente un truc du genre "tout ce qui n'est pas http://www.example.com"

Code:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.example\.com$ [NC]
RewriteRule ^(.*) http://www.example.com/$1 [QSA,L,R=301]

Merci de ta réponse rapide.

Dans le manager je n'ai pas de possibilité de faire pointer "monsite.fr" (étant le domaine principal sur cet hébergement) sur un autre répertoire que /www/, est-ce possible de le faire pointer sur /www/monsite.com/ à travers le .htaccess situé à la racine de /www/?

Sinon suis-je contraint de supprimer mon dossier /www/monsite.com/ et de remonter les fichiers à /www/ , et ensuite d'aller dans le manager vers pointer "monsite.com" sur /www/?
 

zeb

WRInaute accro
PifPafPouf a dit:
Sinon suis-je contraint de supprimer mon dossier /www/monsite.com/ et de remonter les fichiers à /www/ , et ensuite d'aller dans le manager vers pointer "monsite.com" sur /www/?

Bah a priori si c'est techniquement possible chez OVH alors oui ne te prive pas ça me semble le plus simple surtout si tu compte pas héberger 15000 sites sur ce compte.

J'ai compris que tu ne souhaite pas exploiter le .fr mais que tu souhaite que tout internaute entrant l'url example.com ou example.fr avec ou sans www finissent sur http://www.example.com

Je comprend que tu as un souci car un domaine est forcement attaché a un dossier (particularité OVH)

La solution est donc de monter le site dans ce dossier et d'y mettre un htaccess qui redirige tout ce qui n'est pas le domaine voulu vers celui qui est voulu.

PifPafPouf a dit:
Dans le manager je n'ai pas de possibilité de faire pointer "monsite.fr" (étant le domaine principal sur cet hébergement) sur un autre répertoire que /www/, est-ce possible de le faire pointer sur /www/monsite.com/ à travers le .htaccess situé à la racine de /www/?

Cette remarque me fait penser en fait que tu as déployé ton site dans le dossier "/www/monsite.com/" et que tu souhaite gérer le cas du .fr a part.

Auquel cas ne change pas le pointage des domaines vers les dossiers mais met un htacces dans le www (dossier du fr) pour rediriger ver le .com

un truc du genre (a tester) (tout renvoyer systématiquement sur le http://www.example.com)

Code:
RewriteEngine On
RewriteRule ^(.*) http://www.example.com/$1 [QSA,L,R=301]
 

St3phen

Nouveau WRInaute
Bonjour,
J'ai besoins de vos lumières !
J'ai un lien tout bête
Code:
<a href="http://www.unsite.com">mon lien</a>

Je clique et mon url devient
Code:
http://www.monsite.com/\"http://www.unsite.com\"
Et n'est donc pas "redirigé" comme un lien classique vers http://www.unsite.com

(sachant que http://www.unsite.com est un lien créé à partir de ckeditor et donc inconnue/impossible à déterminer)

J'ai lu sur le net qu'il s'agit de la configuration du serveur, un referer apparemment...

Étant archi nul en htaccess pouvez vous m’éclaircir sur la syntaxe à appliquer svp

Voilà ce que j'ai... le code n'est pas forcément bon ;)
Code:
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_REFERER} !^/QUOI METTRE ICI ????

Merci de votre aide !
 

PifPafPouf

Nouveau WRInaute
zeb a dit:
PifPafPouf a dit:
Sinon suis-je contraint de supprimer mon dossier /www/monsite.com/ et de remonter les fichiers à /www/ , et ensuite d'aller dans le manager vers pointer "monsite.com" sur /www/?

Bah a priori si c'est techniquement possible chez OVH alors oui ne te prive pas ça me semble le plus simple surtout si tu compte pas héberger 15000 sites sur ce compte.

J'ai compris que tu ne souhaite pas exploiter le .fr mais que tu souhaite que tout internaute entrant l'url example.com ou example.fr avec ou sans www finissent sur http://www.example.com

Je comprend que tu as un souci car un domaine est forcement attaché a un dossier (particularité OVH)

La solution est donc de monter le site dans ce dossier et d'y mettre un htaccess qui redirige tout ce qui n'est pas le domaine voulu vers celui qui est voulu.

PifPafPouf a dit:
Dans le manager je n'ai pas de possibilité de faire pointer "monsite.fr" (étant le domaine principal sur cet hébergement) sur un autre répertoire que /www/, est-ce possible de le faire pointer sur /www/monsite.com/ à travers le .htaccess situé à la racine de /www/?

Cette remarque me fait penser en fait que tu as déployé ton site dans le dossier "/www/monsite.com/" et que tu souhaite gérer le cas du .fr a part.

Auquel cas ne change pas le pointage des domaines vers les dossiers mais met un htacces dans le www (dossier du fr) pour rediriger ver le .com

un truc du genre (a tester) (tout renvoyer systématiquement sur le http://www.example.com)

Code:
RewriteEngine On
RewriteRule ^(.*) http://www.example.com/$1 [QSA,L,R=301]

Effectivement
Merci Zeb,

il a fallu que j'effectue plusieurs tests pas à pas pour repérer où ça coinçait. En fait, il ne faut pas utiliser le panneau d'admin d'OVH pour les redirections.

Dans le panneau d'admin la seule chose à vérifier est la configuration du multidomaine chaque domaine enregistré devant cibler vers le bon chemin /www/monsitecom pour monsite.com
Et ensuite il s'agit d'uniquement travailler à partir des dossiers et placer dans chacun un .htaccess comme suit :

dans le dossier racine du domaine .fr ( = celui du "domaine principal" selon l'hébergement OVH) /www/ :
Code:
RewriteEngine On
RewriteRule ^(.*) http://www.monsite.com/$1 [QSA,L,R=301]

dans le dossier du domaine en .com :
Code:
RewriteEngine On
RewriteBase /

Cela fonctionne ainsi, ce qui coinçait c'était la multiplication des redirections 301, et des réécritures d'url dans les dossiers.
 

PifPafPouf

Nouveau WRInaute
St3phen a dit:
Bonjour,
J'ai besoins de vos lumières !
J'ai un lien tout bête
Code:
<a href="http://www.unsite.com">mon lien</a>

Je clique et mon url devient
Code:
http://www.monsite.com/\"http://www.unsite.com\"
Et n'est donc pas "redirigé" comme un lien classique vers http://www.unsite.com

(sachant que http://www.unsite.com est un lien créé à partir de ckeditor et donc inconnue/impossible à déterminer)

J'ai lu sur le net qu'il s'agit de la configuration du serveur, un referer apparemment...

Étant archi nul en htaccess pouvez vous m’éclaircir sur la syntaxe à appliquer svp

Voilà ce que j'ai... le code n'est pas forcément bon ;)
Code:
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_REFERER} !^/QUOI METTRE ICI ????

Merci de votre aide !

Salut
si tu utilises un CMS ou simplement un éditeur comme CKeditor pour ajouter des liens sur ton site vers d'autres, il me semble qu'il s'agit d'un problème de réécriture d'url. Regarde dans le panneau de configuration de ton CMS, ou dans le fichier config de ton site, pour voir les valeurs attribuées à certains champs.

Pour t'aider sur ce point tu as : https://www.webrankinfo.com/dossiers/techniques/tutoriel-url-rewriting

Tu devrais pouvoir trouver ton bonheur après avoir effectué quelques tests de lignes de code sur ton site.
 

DjamesAllen

WRInaute discret
Merci mahdivitche pour ce topic très intéressant qui regroupe tous ce qu"il faut au niveau du htaccess et des redirections en un seul endroit.
 

ephenea

Nouveau WRInaute
Bonjour,

j'ai un problème puisque je débute avec .htaccess.

j'ai 2 cas:

1. comment rediriger:

sousdomaine.domaine.com/page.html vers domaine.com/sousdomaine/page.html


2. comment rediriger

sousdomaine.domaine.com vers domaine.com/sousdomaine



c'est urgent svp !! au secours merci d'avance.
 

M. bcln

WRInaute discret
Bonjour,

tout d'abord reco+1 pour le topic !
J'ai une question au sujet des erreurs 410.
Celles-ci sont apparemment comprises par les robots, et cela leur indique la page a été supprimé de manière permanente.
Comment mettre cela en place ? Je souhaite supprimer des liens sur ma page d'accueil, sans mettre en place la moindre redirection, mais ne souhaite pas créer d'erreurs 404.
que faire dans ce que la ?

Merci beaucoup !
 

desabillemoi

Nouveau WRInaute
Bonjour,

Merci pour ces codes, cependant je ne trouve pas ce que je recherche ! J'ai besoin de rediriger un trafic géolocalisé.

En gros j'ai des sites étrangers qui génèrent du trafic français et j'aimerai détecter le trafic fr puis le rediriger sur une url France (sous forme d'un fichier htaccess)

On m'a donné ca mais ca ne fonctionne pas...

RewriteEngine on
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^FR$
RewriteRule ^(.*)$ http://www.url.fr$1 [R,L]

Merci d'avance pour votre aide,
David
 

aloaloalo

Nouveau WRInaute
Bonjour à tous;

Je suis novice en référencement
J'ai remarqué que j'ai sur mon site web plusieurs adresses pour la meme page (meme contenu)
Pour la page d'acceuil j'ai www.monsite.com et www.monsite.com/fr et www.monsite.com/fr.html et www.monsite.com/fr.php et www.monsite.com/idex ... et d'autres qui pointent tous vers la page d'acceuil.
Le probleme c'est qu'un grand nombre est indexé par google, ce qui fait que je risque d'avoir un probleme de duplicate content.
Ma question est comment reglé ce probleme? quel page je dois garder? et quel est l'impact sur le referencement?

Merci pou votre aide
 

zeb

WRInaute accro
aloaloalo a dit:
1/ Ma question est comment reglé ce probleme?
2/ quel page je dois garder?
3/ et quel est l'impact sur le referencement?
1/ réécriture url vers url regarde du côté des redirection page a page en 301 pour chacune des urls "nocives".
genre :
Code:
RewriteRule old-page.php http://www.example.com/new-page.php [R=301,L]

2/ celle qui reçoit le plus de Back link si ton optique est de ne pas minimiser ton jus,
celle des cartes de visite si ton objectif est la com,
sinon celle qui est la plus mnémotechnique est souvent la meilleure.

3/ dans ton cas (beaucoup d'urls) cela peut se révéler pénalisant (pas a plomber un site quand même) mais dans les cas classique du "avec et sans www" il y a beaucoup de folklore et de parano dans ce qui se dit dans la mesure ou je suis resté des années avec ce genre de truc et GG a su faire la part des choses assez facilement
 

marcopolo29

Nouveau WRInaute
Bonsoir,
Merci pour ce travail. Mais je débute, alors je pose la question idiote où place t-on le code dans le fichier .htaccess ?
Au début ? Quelle ligne ? ect.

Bonne soirée
 

Liste-riad

WRInaute discret
marcopolo29 a dit:
Bonsoir,
Merci pour ce travail. Mais je débute, alors je pose la question idiote où place t-on le code dans le fichier .htaccess ?
Au début ? Quelle ligne ? ect.

Bonne soirée

Bonjour

L'emplacement que tu veux, soi au debut soit a la fin.
 

Prat49

Nouveau WRInaute
mahdivitche a dit:
*** rediriger site sans www. vers site avec www : ( pour éviter le duplicate contenu )
Code:
RewriteEngine On 
RewriteCond %{HTTP_HOST} !^www\.nomdoamine\.com [NC] 
RewriteRule (.*) http://www.nomdoamine.com/$1 [QSA,R=301,L]

Bonjour, petite question (j'espère qu'elle n'a pas été posée), j'aimerais faire l'inverse de cette manip', à savoir : rediriger site AVEC www. vers site SANS www.

Ne voulant pas faire de bêtises, je préfère me tourner vers vous. :)
 

zeb

WRInaute accro
Code:
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteRule (.*) http://example.com/$1 [QSA,R=301,L]
 

Perla-Blanca

Nouveau WRInaute
mahdivitche a dit:
*** rediriger un ancien page vers un nouvelle page ( pour éviter les erreurs 404 )
Code:
RewriteEngine On 
RewriteRule ancienpage.html http://www.nomdomaine.com/nouvellepage.html [R=301]

Bonjour,
Je ne suis pas un pro de la redirection avec le fichier .htaccess et je remercie au passage l'auteur de ce mémo.

Aussi me suis je aperçu de la chose suivante, concernant une redirection de pages que j'avais mal nommé.
RewriteRule ancienpage.html fonctionne parfois mais pas pour toutes les pages

Mais j'ai du parfois utiliser cette syntaxe, me rendant compte que l'extension de mes pages au travers de mon éditeur étaient .htm et non .html :
RewriteRule ancienpage.htm

Finalement j'ai tout mis en RewriteRule ancienpage.htm et tout à l'air de fonctionner.

J'espère avoir été clair

En connaissez vous l'explication ?
 

missca

Nouveau WRInaute
Bonsoir,
Voici ma situation :
j'ai un nom de domaine associé à un espace dans lequel il y a deux sous-domaines : www et V2.
La V2 est comme son nom l'indique le nouveau site web, créé sous wordpress.
J'ai inséré l'index.php et l'.htaccess à la racine de cet espace pour diriger vers le nouveau site.
Ce .htacces indique donc :
# BEGIN WordPress
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?nomdedomaine.fr$
RewriteRule ^(/)?$ V2

# END WordPress

Tout le monde se porte bien sauf la quarantaine de pages précédemment indexées par google qui dirige vers une page error 404 dans l'environnement de la V2.

J'ai préparré une jolie liste sur le principe
RewriteEngine On
RewriteRule ^/ancien-dos/ancienne-page/?$ http://nomdedomaine.fr/nouvelle-page1 [R=301]
RewriteRule ^/ancien-dos2/ancienne-page3/?$ http://nomdedomaine.fr/nouvelle-page2 [R=301]
.....

Je l'ai intégrée à la suite du code de la page .htaccess à la racine ... et quand je retourne sur le site, je trouve "Cette page Web présente une boucle de redirection."

Je me demande donc dans quel dossier dois-je insérer ce .htaccess ???

Merci de votre aide
 

annette44

Nouveau WRInaute
Bonjour,

Je début dans la redirection et pour l'instant j'ai déménagé des pages de mon site et en plus je les ait renommées - je sais je n'aurais pas du.

donc j'aimerai rediriger des pages qui ont la structure (mais ce sont des pages)
http://www.example.com/faqs/category/la-technologie-de-blabla/
http://www.example.com/faqs/category/utilisation-du-casquqdsmfkqmlkdjf/

vers
http://www.example.com/mon-example/faq/ qui est aussi une page

le problème que j'ai en écrivant
Redirect permanent /faqs/category/la-technologie-de-blabla/ http://www.example.com/mon-example/faq/
ou bien
Redirect permanent /faqs/category/ http://www.example.com/mon-example/faq/
c'est que cela m'écrit
http://www.example.com/mon-example/faq/la-technologie-de-blabla/ et cela plante car cette page n'existe pas.

Comment puis je faire pour écrire correctement ma redirection ?
 

nhorky

Nouveau WRInaute
Bonjour,

Merci pour ce post super pratique!

Le premier post recap est fort utile pour ceux qui ne sont pas des experts de la redirection comme moi! :)

sans rien savoir, on peut en mettre une en place en un rien de temps en modifiant son .htaccess!

Bonne journée,
Nicolas
 

rim_referencement

Nouveau WRInaute
Bonjour,

J'ai un problème sur mon site lié à une redirection 301, en effet j'ai mis en place une redirection depuis monsite.fr vers monsite.fr/fr ( version française du site).

Je viens de trouver l'informations dans GWT ( au niveau de trafic de recherche/liens vre svotre site) comme quoi monsite.fr/fr a reçue 18 liens de puis monsite.fr cela sous-entend qu'il le considère comme un site à part?

Pouvez-vous m'aider?
 

HFW

Nouveau WRInaute
Bonjour à tous !

J'aimerais savoir comment faire pour rediriger une URL ne contenant pas un certain répertoire, vers la même URL contenant ce répertoire (pas très clair ;) )

Exemple :

J'aimerais rediriger toutes les pages de ce type :
http://www.exemple.com/page-exemple.html
Vers
http://www.exemple.com/fr/page-exemple.html

Mais aussi :

http://www.exemple.com/rep-exemple/page-exemple.html
Vers
http://www.exemple.com/fr/rep-exemple/page-exemple.html

Merci pour vos futures réponses ! :D
 

Ilmag

Nouveau WRInaute
Bonjour,
j'ai eu beau retourner ce topic dans tous les sens mais je ne crois pas avoir trouvé la réponse à ma question, je m'explique :

J'ai récemment récupéré un NDD expiré que je souhaite rediriger vers mon site e-commerce. Voici ce que je souhaite faire mais je ne sais pas quel code je devrai insérer dans le .htaccess du ndd expiré (j'ai pris une offre gratuite type start 10M chez ovh pour cela). Alors voilà ce que je souhaite mettre en place :

1/ rediriger toutes les pages profondes du ndd expiré vers sa page d'accueil (donc y compris toutes les pages qui reçoivent des liens)
2/ puis rediriger via une 301 le dit ndd expiré vers la home de mon site e-commerce

Quelqu'un pourrait-il me venir en aide et m'indiquer quel bout de code je devrai renseigner dans le .htaccess du ndd expiré pour que cela fonctionne svp ?

merci
 

Changthai

Nouveau WRInaute
Bonjour à tous,

Je poste ici car mon topic semble avoir fait un four :D . Je souhaite fusionner deux sites A et B(même thématique) dans un nouveau site B' tout beau tout neuf sur WP. J'ai 2 NDD et je souhaite garder le NDD de B. ( A n'est pas perdu mais je veux utiliser le nom B dorénaavant )

J'ai commencé par rediriger tout les nddb.fr www.nddb.fr nddb.com vers www.nddb.com , d'ailleurs j'ai oublié quelque chose car les page ne sont pas redirigées justes les domaines.

Pour le nouveau site si je supprimes tout le dossier du site B et que je met B' à la racine, est ce que ça marche si je fais des redirections page à page entre www.nddb.fr/page1 > www.nddb.fr/page1' sachant que la page d'origine n'existe plus car je vais supprimer l'ancien site.

Ensuite pour le site A , je compte faire des redirections pages à pages entre www.ndda.net/page1 > www.nddb.fr/page1'

Cela vous semble-t-il correcte ou je fais une grosse connerie ?

Merci par avance.
 

michel vernet

Nouveau WRInaute
bonjour,
j'ai essayé le code indiqué pour une redirection permanente de http vers https, mais ça ne marche pas, ça me dit " redirection mal configurée " :

RewriteEngine On
RewriteRule ^(.*)$ https://www.noveaunomdomaine.com/$1 [R=301,L]

je suis chez ovh en mutualisé ( je ne sais pas si ça a une importance ? )

quel script SVP pour rediriger tout un site http vers https ? Merci
 

RaphMo

Nouveau WRInaute
Bonjour a tous et merci pour ce topic très utile.

J'ai un site sur lequel on peut déposer des avis sur les jeux video (pour l'instant en BETA), je souhaites faire en sorte que s'affiche l'url http://www.game-advise.com/28 pour le jeux dont l'id est 28 dans ma BDD et non http://www.game-advise.com/ga.php?id=28

j'ai donc repris le code pour le .htaccess

Code:
   Options +FollowSymLinks

    RewriteEngine On
    RewriteRule ^(.*)-([a-z-]+)-([0-9]+)\.html$ ga.php?id=$2 [L]

    RewriteBase /

mais cela ne fonctionne pas ... pourriez vous m'aider ?

Par avance merci !

PS: Je suis chez 1&1 mutualisé
 

michel vernet

Nouveau WRInaute
bonjour, essaye ça :

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301]

RaphMo a dit:
Bonjour a tous et merci pour ce topic très utile.

J'ai un site sur lequel on peut déposer des avis sur les jeux video (pour l'instant en BETA), je souhaites faire en sorte que s'affiche l'url http://www.game-advise.com/28 pour le jeux dont l'id est 28 dans ma BDD et non http://www.game-advise.com/ga.php?id=28

j'ai donc repris le code pour le .htaccess

Code:
   Options +FollowSymLinks

    RewriteEngine On
    RewriteRule ^(.*)-([a-z-]+)-([0-9]+)\.html$ ga.php?id=$2 [L]

    RewriteBase /

mais cela ne fonctionne pas ... pourriez vous m'aider ?

Par avance merci !

PS: Je suis chez 1&1 mutualisé
 

RaphMo

Nouveau WRInaute
michel vernet a dit:
bonjour, essaye ça :

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301]

RaphMo a dit:
Bonjour a tous et merci pour ce topic très utile.

J'ai un site sur lequel on peut déposer des avis sur les jeux video (pour l'instant en BETA), je souhaites faire en sorte que s'affiche l'url http://www.game-advise.com/28 pour le jeux dont l'id est 28 dans ma BDD et non http://www.game-advise.com/ga.php?id=28

j'ai donc repris le code pour le .htaccess

Code:
   Options +FollowSymLinks

    RewriteEngine On
    RewriteRule ^(.*)-([a-z-]+)-([0-9]+)\.html$ ga.php?id=$2 [L]

    RewriteBase /

mais cela ne fonctionne pas ... pourriez vous m'aider ?

Par avance merci !

PS: Je suis chez 1&1 mutualisé

Hello, merci pour ton retour, mais quand je mets le code indiqué donc celui ci

Code:
       Options +FollowSymLinks

		RewriteEngine On
		RewriteCond %{HTTPS} off
		RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301]

        RewriteBase /

j'ai ce message d'erreur

884106Capturede769cran20160713a768140918.png
8O
 

Patalf

Nouveau WRInaute
Bonjour,

Mon site est accessible en http et https, avec ou sans "www".

Je voudrais faire 3 redirections, j'ai regardé les exemples mais ne comprends pas bien l'interdépendance ce ces lignes que l'on met dans le htaccess. Je suis sur serveur Apache.

1 - http => https systématiquement

2 - www => sans "www" ou l'inverse d'ailleurs, l'un est il préférable à l'autre ?

3 - page inconnue => index.html j'ai d'anciennes pages périmées que cette buse de Google indexe encore alors qu'elles n'existent plus et ne sont pas dans le sitemap ... Entre les bonnes pages qui ne rentrent pas dans l'index, et les pages qu'il a indexé il y a 10 ans et qu'il ne veut pas oublier, on a parfois des envies de meurtre.
 

marcopolo29

Nouveau WRInaute
Bonjour a tous,

voila j'ai regroupé plusieurs code de redirection .hatacces et je veux partager avec vos :


*** rediriger un nom de domaine avec leur page vers un autre
Code:
RewriteEngine On
RewriteRule ^(.*)$ http://www.noveaunomdomaine.com/$1 [R=301,L]


*** rediriger site sans www. vers site avec www : ( pour éviter le duplicate contenu )
Code:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.nomdoamine\.com [NC]
RewriteRule (.*) http://www.nomdoamine.com/$1 [QSA,R=301,L]


*** rediriger index.html , index.php.... vers racine de site ( aussi pour éviter le duplicate contenu )
Code:
RewriteEngine On
RewriteCond %{THE_REQUEST} ^(GET|POST|HEAD)\ (/.*)?/index.(htm|html|php|asp|shtml)
RewriteRule ^(.*)index.(htm|html|php|asp|shtml)$ /$1 [R=301,L]


*** rediriger un ancien page vers un nouvelle page ( pour éviter les erreurs 404 )
Code:
RewriteEngine On
RewriteRule ancienpage.html http://www.nomdomaine.com/nouvellepage.html [R=301]


*** rediriger un dossier et leur contenu vers un autre nouveau dossier ( pour éviter les erreurs 404 )
Code:
RewriteEngine On
RewriteRule ^ancien/(.*)$ http://www.nomdomaine.com/nouveaudossier/$1 [R=301,L]


/**************************** les pages format exemple.php?id=5 ----> exemple-5.html *************** /
Code:
RewriteEngine On
RewriteRule ^(.*)-([a-z-]+)-([0-9]+)\.html$ exemple.php?id=$2 [L]

/**************************** les pages format exemple.php?id=5&cat=10 ----> exemple-5-10.html *************** /
Code:
RewriteEngine On
RewriteRule ^(.*)-([a-z-]+)-([0-9]+)-([0-9]+)\.html$ exemple.php?id=$3&cat=$4 [L]


/**************************** convertir l'extension de fichiers php en html *************** /
Code:
RewriteEngine On
RewriteRule ^(.*)\.html $1\.php [L]
( le format des liens sera exemple.html alors que le nom de la page est exemple.php



Bien sur il y'a des autres code a vos de nos donné vos code et aussi vos remarque ;)


Merci
Bonjour,
Est-ce que ces codes sont toujours valables car on est maintenant https !
Ne faudrait-il pas mette un (S) à la ligne ci-dessous ?
Merci de votre aide.
RewriteRule ^(.*)$ http://www.noveaunomdomaine.com/$1 [R=301,L]
 

amateurdesite

Nouveau WRInaute
Bonjour a tous,

voila j'ai regroupé plusieurs code de redirection .hatacces et je veux partager avec vos :


*** rediriger un nom de domaine avec leur page vers un autre
Code:
RewriteEngine On
RewriteRule ^(.*)$ http://www.noveaunomdomaine.com/$1 [R=301,L]


*** rediriger site sans www. vers site avec www : ( pour éviter le duplicate contenu )
Code:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.nomdoamine\.com [NC]
RewriteRule (.*) http://www.nomdoamine.com/$1 [QSA,R=301,L]


*** rediriger index.html , index.php.... vers racine de site ( aussi pour éviter le duplicate contenu )
Code:
RewriteEngine On
RewriteCond %{THE_REQUEST} ^(GET|POST|HEAD)\ (/.*)?/index.(htm|html|php|asp|shtml)
RewriteRule ^(.*)index.(htm|html|php|asp|shtml)$ /$1 [R=301,L]


*** rediriger un ancien page vers un nouvelle page ( pour éviter les erreurs 404 )
Code:
RewriteEngine On
RewriteRule ancienpage.html http://www.nomdomaine.com/nouvellepage.html [R=301]


*** rediriger un dossier et leur contenu vers un autre nouveau dossier ( pour éviter les erreurs 404 )
Code:
RewriteEngine On
RewriteRule ^ancien/(.*)$ http://www.nomdomaine.com/nouveaudossier/$1 [R=301,L]


/**************************** les pages format exemple.php?id=5 ----> exemple-5.html *************** /
Code:
RewriteEngine On
RewriteRule ^(.*)-([a-z-]+)-([0-9]+)\.html$ exemple.php?id=$2 [L]

/**************************** les pages format exemple.php?id=5&cat=10 ----> exemple-5-10.html *************** /
Code:
RewriteEngine On
RewriteRule ^(.*)-([a-z-]+)-([0-9]+)-([0-9]+)\.html$ exemple.php?id=$3&cat=$4 [L]


/**************************** convertir l'extension de fichiers php en html *************** /
Code:
RewriteEngine On
RewriteRule ^(.*)\.html $1\.php [L]
( le format des liens sera exemple.html alors que le nom de la page est exemple.php



Bien sur il y'a des autres code a vos de nos donné vos code et aussi vos remarque ;)


Merci

Bonjour
et merci pour ces 95 messages que j'ai lu en tentant de trouver une réponse à ma question, mais en vain.

En effet, il semblerait que mon cas soit particulier. Chez OVH j'ai une redirection en zone DNS de type
www.nomdedomaine.com vers http://nomdedomaine.com
en fichier htaccess j'ai :

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://mondomaine.com/$1 [R,L]

=> qui me renvoi toutes conenxions sur le site de http vers https.
MAIS, il y a une redirection qui ne marche pas dans ce contexte, c'est le cas où on tape manuellement dans la barre url la ligne suivante : https://www.mondomaine.com

Dans ce cas précis, le www inséré dans l'url https n'est pas pris en compte par la redirection de la zone DNS ni par celle du http vers le https.

J'ai modifié sur ovh le sousdomaine pour une redirection de www.mondomaine.com vers https://mondomaine.com mais ça ne change rien. L'URL https://www... affiche toujours une page erreur.

Existe-t-il un code complémentaire qui permette de faire cette redirection quand l'usager se rend de lui même sur l'url https://www.mondomaine.com, qui le renverrait vers https://mondomaine.com ?

Je vous remercie par avance pour vos retours
 

Discussions similaires

Haut