8768 sujets

Développement web côté serveur, CMS

Bonjour,

Pour la réécriture d'URL j'ai besoin d'une expression régulière et je ne suis pas spécialiste.

mots-clés-indéterminés-A8--abc-sous rayon.html

Mon objectif est de récupérer A8--abc

Soit une
Majuscule [A-Z]
Chiffre [1-9]
deux -
3 lettres minuscules indéterminées

Ou plus simplement ce qui commence par [A-Z][1-9]-- jusqu'à -sous-rayon.

De façon à éviter effet de bord il faut bien s'assurer que le truc se termine par "-sous rayon.html"

Merci d'avance.
Bonjour,

Merci de ta réponse rapide.

Je suppose que \d est équivalent à [1-9].

Le test fonctionne bien avec l'outil en lien, je cocherai Résolu un peu plus tard.

Autrement, il n'y a pas de forum Référencement chez Alsacréations mais je me pose la question suivante :

Mes URL en php sont dans le sitemap et assez bien connues par Google, très anciennes
Si je les remplace par des URL en .html et rewrite vers l'ancienne URL php, est-ce Google et autres vont comprendre et apprécier ?
N'y a-t-il pas un risque de contenu dupliqué ou autre ?

C'est pour les moteurs de recherche que je passe en .html, est-ce une bonne idée ?
Modifié par boteha_2 (03 Jul 2022 - 14:55)
Ah, \d est équivalent à [0-9], donc il vaut peut-être mieux écrire explicitement [1-9]

Concernant le sitemap et le risque de contenu dupliqué, je ne sais pas... Je suppose que si les anciennes adresses redirigent vers les nouvelles, il n’y a pas de problème.
Modifié par Anedja (03 Jul 2022 - 18:43)
Bonjour,

Merci pour ton suivi.

Dans une première réponse tu me renvoyais à ce lien qui conseille de ne pas trop changer les URL.

Dans mon cas ce sont les nouvelles URL qui après rewrite se transforment en anciennes URL.

Si je redirige les URL php vers les URL html c'est le serpent qui se mort la queue...

Donc je n'ai pas encore pris de décision, j'attends des avis.
Bonjour,

Dans le .htaccess j'ai ajouté :

RewriteRule [A-Z][1-9]--[a-z]{3}(?=-sous rayon.html$) p.php?a=$1&c=Voi [L]

J'ai testé l'expression régulière avec ce testeur et cela semble fonctionner bien ;

Match1 0-7 A8--pce

Mais je prends une erreur 500

Je précise que j'ai d'autres RewriteRule dans le .htaccess, tout fonctionne bien jusqu'à ce que je colle la nouvelle rule.

Voyez-vous où est l'erreur ?
Bonjour,

Comme cela cela marche :

RewriteRule .-([A-Z][1-9]--[a-z]{3})\-sous-rayon.html$ p.php?a=$1&c=Voi [L]

Fin de problème, sauf erreur.