Anciennes pages dynamiques et redirection permanente

hemi

Nouveau WRInaute
Bonjour,

Malgré de nombreuses recherches sur les forums et sur les moteurs de recherche, je n'arrive pas à trouver la solution à mon problème :

Je viens de terminer la refonte d'un site Web et, bien entendu, les anciennes pages de celui-ci avaient été indexées. N'ayant pas repris le même intitulé pour certaines pages ou les ayant tout simplement supprimées, celles-ci apparaissent toujours dans les résultats de recherche ("erreur 404").

Ma question est la suivante :

J'ai une (ancienne) page dynamique ayant généré plusieurs URL comme l'exemple suivant : http://www.monsite.tld/dossier/page.php?id=xx

Je souhaiterait que toutes ces URL générées (peu importe la valeur de "id") soient redirigées de manière permanente vers la page d'accueil actuelle du site.

J'utilise déjà un fichier .htaccess pour la redirection des pages statiques et des dossiers supprimés.

Pourriez-vous me filer un petit coup de main sur cette affaire ?

Merci d'avance pour vos réponses.

--
Mike
 

michel.leonard

WRInaute occasionnel
a mon avis tu peux écrire ceci dans ton fichier page.php : c'est une redirection 301
Tu peux aussi y ajouter des conditions (if (isset($id))) par exemple... mais le mieux pour les conditions c'est l'expression rationnelle, donne plus de détails ? est-ce que la page 'page.php' est encore utile ?
Code:
header("HTTP/1.1 301 Moved Permanently");
header ('location: http://www.monsite.tld/');
header("Connection: close");
die();
exit;
Mike.
 

hemi

Nouveau WRInaute
Bonjour,

Merci pour ta réponse mais cette page n'existe plus sur le serveur et je souhaiterai ne pas faire de "bidouillage" en la remettant. C'est pour cela que je me suis orienté vers le fichier .htaccess qui est, à mon avis, une solution "propre" et efficace.

De plus, je n'ai parlé que de cette page dans mon appel à l'aide, mais il y en a d'autres qui seront traitées de la même manière car leur URL se présente sous la même forme.

Encore merci.

@+

--
Mike
 

michel.leonard

WRInaute occasionnel
c'est le dossier 'dossier' , ou tout le serveur qu'il faut rediriger ?

SI C'EST LE DOSSIER 'DOSSIER'
Tu supprimes ton dossier, tu crée un fichier dossier.php et tu y insère ceci
Code:
header("HTTP/1.1 301 Moved Permanently");
header ('location: http://www.monsite.tld/');
header("Connection: close");
die();
exit;
SI C'EST TOUT LE SERVEUR
A ce moment là tu écris ceci dans ton fichier .htaccess
Code:
RewriteEngine On
RewriteBase /
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^.*$ http://newdomainedetonchoix.fr/ [R=301,L]
Mike. (Pense bien à tout encoder en UTF-8)
 

hemi

Nouveau WRInaute
Non, ce n'est pas tout le site mais plusieurs pages situées dans différents dossiers.

J'ai continué à chercher de mon coté et je crois que c'est possible en utilisant des rewriteRule mais je ne suis vraiment pas à l'aise avec la syntaxe et je ne trouve pas de solution à l'heure actuelle (que des erreurs "500")...

Wait and see...

--
Mike
 

hemi

Nouveau WRInaute
Hello!

Ce l'auteur de ce post (https://www.webrankinfo.com/forum/supprimer-fin-des-url-avec-une-redirectpermanent-301-t140602.html) semble avoir une problématique similaire à la mienne mais j'aurais besoin d'explications supplémentaires pour l'adapter à mon problème...

@+

--
Mike
 

Discussions similaires

Haut