Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 27/04/2022, à 06:54

abecidofugy

[Résolu] regex pour .htaccess pour faire redirection permanente en 301

Hello,

On a décidé de désactiver tous nos modules AMP pour Drupal, comme « personne » ne l’utilise et il est difficile de faire un design identique entre la version amp et la version mobile responsive.

Mais pour faire proprement la chose, je voudrais mettre en place des 301 (redirection permanente) dans le .htaccess et ne laisser que la canonical déjà en place.

Les urls pour AMP se présentent sous la forme : www.domaine.fr/?amp ou www.domaine.fr/services?amp

Il faudrait donc virer le suffixe ?amp

J’ai trouvé une ressource (mais pour Wordpress) ici, mais la méthode 2 est foireuse : https://webosity.fr/comment-desactiver- … wordpress/

Si vous avez une idée de comment faire pour Drupal, je vous remercie !

Bonne journée.

Dernière modification par abecidofugy (Le 27/04/2022, à 19:35)

Hors ligne

#2 Le 27/04/2022, à 07:57

bruno

Re : [Résolu] regex pour .htaccess pour faire redirection permanente en 301

Bonjour,

Si les URL se terminent toutes par ?amp, je dirai quelque chose comme :

RedirectMatch 301 ^/(.*)\?amp$ https://domaine.fr/$1

Hors ligne

#3 Le 27/04/2022, à 07:59

abecidofugy

Re : [Résolu] regex pour .htaccess pour faire redirection permanente en 301

Non, pas toutes les URL ont une page valide AMP, car elles doivent répondre à certains critères.

Je vais tester ton lien. Merci !

Hors ligne

#4 Le 27/04/2022, à 08:00

abecidofugy

Re : [Résolu] regex pour .htaccess pour faire redirection permanente en 301

Est-il possible de ne pas préciser le domaine dans la regex ?

J’ai le site en préprod, donc le domaine n’est pas le définitif.

Hors ligne

#5 Le 27/04/2022, à 08:06

abecidofugy

Re : [Résolu] regex pour .htaccess pour faire redirection permanente en 301

Mon .htaccess pour l’instant : https://pastebin.com/vpVPa8BL

Hors ligne

#6 Le 27/04/2022, à 11:50

bruno

Re : [Résolu] regex pour .htaccess pour faire redirection permanente en 301

Non avec Redirect ou RedirectMatch la redirection doit se faire vers une URL absolue (avec le protocole et le nom de domaine)
Sinon tu dois pouvoir faire la même chose avec des règles de réécriture :

RewriteCond %{REQUEST_URI} (.*)\?amp(.*)$
RewriteRule ^ %1 [L,R=301]

Non testé.

Hors ligne

#7 Le 27/04/2022, à 13:12

abecidofugy

Re : [Résolu] regex pour .htaccess pour faire redirection permanente en 301

Écoute, ça m’a l’air bon, en ce sens que je n’ai plus mon erreur 500 ^^
Par contre, l’url reste affichée dans le navigateur avec le ?amp

Si je traduisais en langage clair, ton code fait une redirection permanente des url finissant par ?amp et seulement celles-ci, vers l’url sans le ?amp (canoniques).

C’est ça ?

Merci bruno.

PS : j’ai rajouté tes lignes au niveau de la ligne 150 du .htaccess

Dernière modification par abecidofugy (Le 27/04/2022, à 13:13)

Hors ligne

#8 Le 27/04/2022, à 16:04

bruno

Re : [Résolu] regex pour .htaccess pour faire redirection permanente en 301

Non ce que j'ai indiqué ne fonctionne pas. Je ne suis jamais à l'aise avec les règles de réécriture et les regexp. je pense qu'il faut utiliser QUERY_STRING ou QSD

Bon j'ai cherché et testé différentes solutions trouvées sur le web, aucune ne semble fonctionner avec un CMS qui utilise des chaînes de requêtes (Wordpress, Drupal, etc.) hmm

Dernière modification par bruno (Le 27/04/2022, à 16:58)

Hors ligne

#9 Le 27/04/2022, à 18:29

abecidofugy

Re : [Résolu] regex pour .htaccess pour faire redirection permanente en 301

Re bruno,

Alors on m’a pointé cette page-là: https://perishablepress.com/redirect-qu … -htaccess/
Tu saurais adapter ça à mon cas précis des pages avec ?amp            ?

Merci de ton aide, je vais tâcher de relire la page pour tenter de la comprendre, à mon niveau.

Hors ligne

#10 Le 27/04/2022, à 18:45

abecidofugy

Re : [Résolu] regex pour .htaccess pour faire redirection permanente en 301

Cool, on m’a montré un super tool : https://htaccess.madewithlove.com/?shar … c095d4ee1f

Je me marque-page ça ! Ça semble répondre à ma requête. Je passe en Résolu wink

Merci bruno

Hors ligne

#11 Le 27/04/2022, à 18:46

abecidofugy

Re : [Résolu] regex pour .htaccess pour faire redirection permanente en 301

là, l’exemple avec juste ?amp : https://htaccess.madewithlove.com?share … cd7696bc45

Dernière modification par abecidofugy (Le 27/04/2022, à 18:47)

Hors ligne

#12 Le 27/04/2022, à 18:51

abecidofugy

Re : [Résolu] regex pour .htaccess pour faire redirection permanente en 301

Zut, ça redirige vers la homepage, pas l’url sans le ?amp

Hors ligne

#13 Le 27/04/2022, à 18:52

bruno

Re : [Résolu] regex pour .htaccess pour faire redirection permanente en 301

Pas mal cette page, merci pour le lien wink
Par contre j'ai testé des choses similaires et cela ne fonctionnait pas sur mon CMS : conflit avec d'autres redirection ou des requête qui contenaient les lettres amp. Je n'ai pas creusé plus loin. À tester avec ton Drupal.

Hors ligne

#14 Le 27/04/2022, à 19:35

abecidofugy

Re : [Résolu] regex pour .htaccess pour faire redirection permanente en 301

Alors ça semble marcher pour toutes les URL auxquelles je rajoute le suffixe ?amp sauf une page ! La page /services
Vraiment bizarre.
J’ai vidé les cache (mais normalement, pas besoin) j’ai supprimé les deux redirections automatiques qu’il y avait sur cette page (pour cause d’ancienne renommage de l’url) et ce qui se passe, c’est que je suis redirigé vers la homepage.

Vraiment étrange.

Hors ligne

#15 Le 27/04/2022, à 20:02

abecidofugy

Re : [Résolu] regex pour .htaccess pour faire redirection permanente en 301

J’ai recréé la page récalcitrante, et tout marche à présent ^^

Hors ligne