Je souhaite rediriger toutes mes URL non SEF vers une nouvelle URL SEF sur mon site.Mais mon ancien site et les nouveaux articles de site ont des identifiants différents. Comment puis-je appliquer une redirection 301 pour les anciennes URL non sef à la nouvelle URL sef
Des anciennes URL non-SEF au nouveau SEF avec de nouveaux ID d’article, cela semble un peu gênant. Trop de changements pour tout retrouver en même temps.
Il serait préférable que vous conserviez les anciens ID d'article ou au moins que vous effectuiez cette transition par étapes, par exemple, activez d'abord les URL SEF pour vos anciennes pages, donnez-leur un peu de temps pour que les moteurs de recherche mettent à jour leurs index, puis passez à la suivante. étapes, il vous suffira donc de rediriger les URL SEF (si nécessaire).
Maintenant, comment gérer cela dépend ...
Il y a le composant/plug-in de redirection principal, il existe des extensions telles que SH404SEF qui pourraient vous aider, ainsi que le .htaccess que vous pouvez utiliser pour les redirections où elles pourraient s'appliquer.
Le fait est que si vous avez des tonnes d'articles, il serait alors trop de travail de créer des redirections pour tous. De plus, s'il existe des identifiants conflictuels pour les articles et que vous redirigez une ancienne URL non sef avec un identifiant donné vers la nouvelle URL SEF d'un autre article, comment envisagez-vous de gérer la possibilité qu'un de vos nouveaux articles ait le même identifiant que celui que vous avez redirigé?
Une autre possibilité consiste simplement à laisser les choses telles qu’elles sont maintenant, à créer vos 404 pages pour informer tout le monde que les pages ont été déplacées, à publier votre nouveau plan du site dans Google et bientôt, vos nouvelles URL seront indexées.
Vous pouvez rediriger les liens dans votre fichier .htaccess. Au-dessous de la ligne qui commence:
Début - Redirections personnalisées
Vous pouvez commencer à ajouter vos redirections. Ils ressemblent à:
Redirect 301/oldurl http://www.example.com/newurl
Veuillez modifier .htaccess dans votre répertoire racine joomla:
échantillon en .htaccess
RewriteEngine On
RewriteCond %{HTTP_Host} ^site.com
RewriteRule (.*) http://www.site.com/$1 [R=301,L]
ou si vous utilisez params - redirect avec params:
site.com/blog?limitstart=0 à site.com/blog
RewriteCond %{QUERY_STRING} ^limitstart=0
RewriteRule ^blog http://site.com/blog? [R=301,L]
Merci pour toutes les réponses rapides. Je l'ai corrigé avec ceci dans mon fichier .htaccess:
RewriteEngine On
RewriteCond %{QUERY_STRING} ^option=com_content&view=article&id=46&Itemid=78$ [NC]
RewriteRule ^(index\.php)?$ /home/history? [L,R=301,NC]
N'importe qui peut aider ceux-ci.