Comment rediriger toutes les pages xy d'un domaine sauf 4?

Nouveau WRInaute
Bonjour,

Est-il possible, via un fichier htaccess, de rediriger toutes les pages d'un domaine, quel que soit leur nom, sauf 4 que l'on spécifie?

Je m'explique:

J'ai le domaine -http://www.domaine1.com

Ce domaine a plusieurs milliers de pages indexés dans Google mais toutes ont été définitivement supprimées... sauf 4 (en comptant la page index)!

Je veux donc que les 4 pages encore en vigueur restent accessibles normalement:
  • -http://www.domaine1.com/index.html
    -http://www.domaine1.com/page1.html
    -http://www.domaine1.com/page2.html
    -http://www.domaine1.com/page3.html

tandis que toutes les autres pages, quel que soit leur nom, doivent être redirigées vers -http://www.domaine2.com:
  • -http://www.domaine1.com/xyz-46.html --> -http://www.domaine2.com
    -http://www.domaine1.com/vnu55r-23.html --> -http://www.domaine2.com
    -http://www.domaine1.com/abs_12.html --> -http://www.domaine2.com
    -http://www.domaine1.com/fgh-88.html --> -http://www.domaine2.com
    -http://www.domaine1.com/lpz4534.html --> -http://www.domaine2.com
    etc.

Les pages à redirigier ont donc vraiment toutes des noms différents et n'existent plus physiquement à nulle part.

Auriez-vous une suggestion? :(

Merci d'avance.
 
Nouveau WRInaute
En mettant des règles de "non redirection" pour les 4 pages avant la règle de redirection globale dans ton .htaccess ça devrait le faire non ?

J'entends règles de "non redirection", 4 règles qui ne change pas domaine... suivi du paramètre qui va bien [L] je crois pour que ce soit la dernière règle a être utilisée...

Enfin si mes souvenirs sont bons...
 
Nouveau WRInaute
J'ai probablement oublié de préciser que je n'y connaissais pratiquement rien en redirection :oops:

J'ai essayé de chercher sur Google ce dont tu voulais parler mais n'ai rien trouvé. :(

Personne ne saurait me dire quoi mettre concrètement dans mon fichier htaccess pour résoudre mon problème?
 
Nouveau WRInaute
Je partirais sur quelque chose comme ça :

Code:
RewriteEngine On

RewriteCond %{REQUEST_URI} !^/index.html
RewriteCond %{REQUEST_URI} !^/page1.html
RewriteCond %{REQUEST_URI} !^/page2.html
RewriteCond %{REQUEST_URI} !^/page3.html
RewriteCond %{HTTP_HOST} ^domaine1.com$ [NC]
RewriteRule ^(.*)   http://www.domaine2.com/$1  [QSA,L,R=301]

Comment ça marche ?

Si mes pages ne sont pas index.html, page1.html... alors je redirige sinon ça ne fait rien..

Ce code n'a pas été testé... à toi de me dire...
 
Nouveau WRInaute
Les pages xyz & co ne sont pas redirigées. J'arrive toujours sur une erreur 404.

Par contre, lorsque j'entre -http://domaine1.com je suis redirigé, ce qui n'est pas l'effet voulu non plus puisque le fichier index.html existe encore et j'aimerais que ce soit lui qui s'affiche.
 
Nouveau WRInaute
Ok et ça :
Code:
RewriteEngine On

RewriteCond %{REQUEST_URI} !^/$
RewriteCond %{REQUEST_URI} !^/index.html
RewriteCond %{REQUEST_URI} !^/page1.html
RewriteCond %{REQUEST_URI} !^/page2.html
RewriteCond %{REQUEST_URI} !^/page3.html
RewriteCond %{HTTP_HOST} ^domaine1.com$ [NC]
RewriteRule ^(.*)   http://www.domaine2.com/  [QSA,L,R=301]

J'ai ajouté une règle pour la racine du site et j'ai envelé le $1 en fin de redirection pour eviter de reprendre les pages xyz...
 
Nouveau WRInaute
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/$
RewriteCond %{REQUEST_URI} !^/index.html
RewriteCond %{REQUEST_URI} !^/page1.html
RewriteCond %{REQUEST_URI} !^/page2.html
RewriteCond %{REQUEST_URI} !^/page3.html
RewriteRule ^(.*)$ -http://www.domaine2.com [L,QSA]

Comme ça ça fonctionne... :-)

Merci de m'avoir mis sur la piste!
 
WRInaute impliqué
Tu peux faire un peu plus simple:
Code:
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/$
RewriteCond %{REQUEST_URI} !^/(index|page1|page2|page3)\.html
RewriteRule ^(.*)$ -http://www.domaine2.com [L,QSA]
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut