redirection dossier 1 domaine 1 vers dossier 1 domaine 2

Nouveau WRInaute
Bonjour,

Mon site est une boutique en ligne prestashop où j'avais plusieurs catégories de produits.

J'ai créé une deuxième boutique en mode multiboutique avec les produits d'une catégorie de la première boutique.
Donc je cherche à rediriger un dossier du domaine vers ce même dossier du second domaine ...
par exemple

avant mon produit 1 était ici :
http://www.maboutique1.com/dossier1/1-produit.html

donc le produit 1 se trouve maintenant ici :
http://www.maboutique2.com/dossier1/1-produit.html


donc j'aimerai faire une redirection 301 de la page
http://www.maboutique1.com/dossier1/1-produit.html

vers la page
http://www.maboutique2.com/dossier1/1-produit.html


ou plutôt la redirection 301 du dossier
http://www.maboutique1.com/dossier1/

vers le dossier
http://www.maboutique2.com/dossier1/


avec des variables pour détecter automatiquement la suite de l'URL
ceci afin de ne faire qu'une seule redirection pour tous les produits de ce dossier1
et ne pas avoir à faire autant de redirection que de produits ...

mais voilà, je n'y parviens pas ...
car dans mon .htaccess si je met :

RewriteCond %{HTTP_HOST} http://www.maboutique1.com/dossier1/(.*)$ [NC]
RewriteRule ^/?(.*) http://www.maboutique2.com/dossier1/$1 [L,R=301]

ça ne fonctionne pas

En effet, le fait d'être en multiboutique prestashop signifie que le .htaccess est partagé par les 2 boutiques !

donc si je met ceci :

RewriteCond %{HTTP_HOST} ^dossier1/(.*)$ [NC]
RewriteRule ^/?(.*) http://www.maboutique2.com/dossier1/$1 [L,R=301]


je redirige aussi les urls du domaine http://www.maboutique2.com !


Merci par avance pour votre aide
 
Nouveau WRInaute
J'ai essayé ceci :

Options FollowSymLinks
RewriteCond %{HTTP_HOST} http://maboutique1.com/fr/dossier1/(.*)$ [NC]
RewriteRule ^/?(.*) http://maboutique2.com/fr/dossier1/$1 [L,R=301]

mais la ligne
Options FollowSymLinks
provoque une erreur 500

apparemment cette option serait nécessaire pour ce type de redirection ?

J'ai trouvé cela aussi, qui ressemble exactement à ma problématique :

# wrong_domain/correct_path -> correct_domain/correct_path
RewriteCond %{HTTP_HOST} !^www\.maboutique1\.com$ [NC]
RewriteCond %{REQUEST_URI} ^/dossier1$
RewriteRule ^(.*)$ http://maboutique2.com/$1 [L,R=301]

mais ne fonctionne pas non plus ...
 
Nouveau WRInaute
j'ai essayé mais ça ne fonctionne pas ...

une petite précision ... mon domaine par défaut n'a pas les "www" ... ça change peut-être la donne
 
WRInaute accro
Ceci ça donne quoi ?

Code:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^maboutique1\.com$ [NC]
RewriteRule ^dossier1/(.*)$ http://maboutique2.com/$1 [R=301,L]
 
WRInaute accro
Désolé du retour un peu tardif.

Effectivement, puisqu'une règle de redirection c'est "IF" > "THEN"... ta condition devrait porter sur "fr/dossier1/" et non sur "dossier1/".

Ce qui donnerait:

Code:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^maboutique1\.com$ [NC]
RewriteRule ^fr/dossier1/(.*)$ http://maboutique2.com/$1 [R=301,L]

Cette règle devrait fonctionner. Il n'y a pas de raison qu'elle ne fonctionne pas, à moins que ton hébergeur ne permette pas l'URL rewriting ?
A toi de bidouiller un peu la règle: sur certains hébergements il est nécessaire d'échapper les caractères spéciaux, sur d'autres non, ce qui pourrait aussi bien vouloir dire:

Code:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^maboutique1\.com$ [NC]
RewriteRule ^fr\/dossier1\/(.*)$ http://maboutique2.com/$1 [R=301,L]

que

Code:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^maboutique1.com$ [NC]
RewriteRule ^fr/dossier1/(.*)$ http://maboutique2.com/$1 [R=301,L]
 
Discussions similaires
Haut