{"id":349,"date":"2021-04-28T16:21:42","date_gmt":"2021-04-28T16:21:42","guid":{"rendered":"https:\/\/inserm.xyz\/kb\/?p=349"},"modified":"2021-07-15T13:56:27","modified_gmt":"2021-07-15T13:56:27","slug":"redirection","status":"publish","type":"post","link":"https:\/\/wordpress-kb.test.inserm.cloud-ed.fr\/?p=349","title":{"rendered":"Redirections d&rsquo;URLs"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Les redirections d&rsquo;URLs sont principalement g\u00e9r\u00e9es via le plugin <a href=\"ttps:\/\/redirection.me\">Redirection<\/a>. Il permet de construire des redirections, de suivre si elles sont vraiment utilis\u00e9es par les internautes, et de rediriger automatiquement les pages renomm\u00e9es.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le plugin permet de r\u00e9aliser des redirections complexes et des configurations tr\u00e8s avanc\u00e9es. Une bonne connaissance des codes HTTP et des expressions r\u00e9guli\u00e8res (voir plus bas) est n\u00e9cessaire pour en tirer parti.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Les redirections quelques produites hors du plugin et les redirections \u00ab\u00a0magiques\u00a0\u00bb sont abord\u00e9es en fin d&rsquo;article.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/redirection.me\/support\/\"><strong>Documentation g\u00e9n\u00e9rale du plugin<\/strong><\/a><ul><li><a href=\"https:\/\/redirection.me\/support\/faq\/\">Questions fr\u00e9quentes<\/a><\/li><li><a href=\"https:\/\/redirection.me\/support\/problems\/\">Probl\u00e8mes courants<\/a><\/li><li><a href=\"https:\/\/redirection.me\/support\/redirect-regular-expressions\/\">Expressions r\u00e9guli\u00e8res<\/a><\/li><\/ul><\/li><li><a href=\"https:\/\/redirection.me\/developer\/\">Documentation d\u00e9veloppeur<\/a><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"configuration_g\u00e9n\u00e9rale\">Configuration g\u00e9n\u00e9rale<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Les principales sections du plugins sont les suivantes :<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Section<\/th><th>Utilit\u00e9<\/th><\/tr><\/thead><tbody><tr><td>Redirections<\/td><td>Voir les redirections<\/td><\/tr><tr><td>Groupes<\/td><td>Classer les redirections par groupe<\/td><\/tr><tr><td>Journaux<\/td><td>Voir les redirections r\u00e9cemment utilis\u00e9es par des internautes<\/td><\/tr><tr><td>404<\/td><td>Voir les requ\u00eates r\u00e9centes ayant abouti \u00e0 une 404<\/td><\/tr><tr><td>Import\/Export<\/td><td><\/td><\/tr><tr><td>Options<\/td><td>Param\u00e8tres applicables \u00e0 toutes les redirections<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u00c0 noter<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Chaque redirection au sein d&rsquo;un groupe \u00e0 une \u00ab\u00a0position\u00a0\u00bb, qui correspond \u00e0 son ordre d\u2019ex\u00e9cution par le serveur (0 est ex\u00e9cut\u00e9 avant 1).<\/li><li>La V4 d&rsquo;inserm.fr est rest\u00e9 en ligne pr\u00e8s de 10 ans (mise hors ligne 2017), c&rsquo;est pourquoi certaines adresses V4 ont \u00e9t\u00e9  redirig\u00e9es en V6.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"expressions_r\u00e9guli\u00e8res\">Expressions r\u00e9guli\u00e8res<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Les redirections d&rsquo;URLs s&rsquo;appuient souvent sur des <a href=\"https:\/\/fr.wikipedia.org\/wiki\/Expression_r%C3%A9guli%C3%A8re\">expressions r\u00e9guli\u00e8res<\/a> (abr\u00e9g\u00e9 <em>regex<\/em> ou <em>rexep<\/em>). Il s&rsquo;agit d&rsquo;une technologie tr\u00e8s puissante, mais qui suppose une apprentissage important <strong>et n&rsquo;est pas impl\u00e9ment\u00e9e partout de la m\u00eame fa\u00e7on<\/strong>.<\/p>\n\n\n\n<p class=\"has-vivid-red-color has-text-color wp-block-paragraph\"><strong>Redirection s&rsquo;appuie sur <a href=\"https:\/\/www.php.net\/manual\/en\/reference.pcre.pattern.syntax.php\">les expressions r\u00e9guli\u00e8res de PHP<\/a> (type PCRE).<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le plugin fournit <a href=\"https:\/\/redirection.me\/support\/redirect-regular-expressions\/\">une br\u00e8ve introduction au sujet<\/a>, avec quelques liens <a href=\"https:\/\/github.com\/zeeshanu\/learn-regex\">pour approfondir<\/a> et <a href=\"https:\/\/regexr.com\/\">tester ses regex<\/a>. Pour une plong\u00e9e dans le sujet, on peut aussi consulter l&rsquo;excellent <a href=\"http:\/\/www.rexegg.com\/\">Rexegg<\/a> (m\u00eame si <a href=\"http:\/\/www.rexegg.com\/regex-quickstart.html\">son guide rapide<\/a> ne colle pas 100% avec ce que fait PHP). <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00c0 noter, l&rsquo;option suivante : <\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Note that if you are using a regular expression you will need to manage your own trailing slashes in the expression.<\/p><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Redirections produites ailleurs<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">On peut cr\u00e9er des redirections directement dans le <code>.htaccess<\/code> ou via le plugin de SEO : <strong>on \u00e9vite absolument de le faire, sinon \u00e7a va \u00eatre un bordel ing\u00e9rable<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il est <em>probable <\/em>que Polylang Pro g\u00e8re aussi quelques redirections, car il est est capable de donner la m\u00eame URL \u00e0 des contenus diff\u00e9rents. Par ex. les cat\u00e9gories (les cat\u00e9gories International FR et EN ont le m\u00eame permalien : <code>international<\/code>).<\/p>\n\n\n\n<p class=\"has-vivid-red-color has-text-color wp-block-paragraph\"><strong>Par ailleurs, WordPress produit en natif des redirection \u00ab\u00a0magiques\u00a0\u00bb, qui peuvent interf\u00e9rer avec ce qu&rsquo;on a pr\u00e9vu dans Redirection<\/strong>. <\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Les redirections magiques<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Explication : si on clique une URL qui <em>devrait <\/em>tomber en 404, mais qu&rsquo;il existe sur le site un contenu dont le slug s&rsquo;approche de cette URL, WordPress va servir ce contenu \u00e0 la place d&rsquo;une 404. Exemple : <\/p>\n\n\n\n<ol class=\"wp-block-list\"><li><a href=\"https:\/\/domaine.tld\/categorie\/contenu-existant\">https:\/\/domaine.tld\/categorie\/contenu-existant<\/a> (existe)<\/li><li><a href=\"https:\/\/domaine.tld\/categorie\/contenu-existant\">https:\/\/domaine.tld\/categorie\/c<\/a> (devrait 404er)<\/li><li><a href=\"https:\/\/domaine.tdl\/lapin\/c\">https:\/\/domaine.tdl\/lapin\/c<\/a> (devrait 404er)<\/li><\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Alors que les URL (2) et (3) devraient tomber en 404, WordPress va servir l&rsquo;URL (1) \u00e0 la place. C&rsquo;est compl\u00e8tement perturbant, mais c&rsquo;est comme \u00e7a. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Selon <a href=\"https:\/\/maheshwaghmare.com\/avoid-wordpress-canonical-redirection\/\">cet article<\/a>, Ce fonctionnement est li\u00e9 aux fonctions <code>template_redirect<\/code> et <code>redirect_canonical<\/code>. Pour limiter ce fonctionnement bizarre, on pense \u00e0 bien fermer ses regex dans Redirections (<code>^ma-regex$<\/code>).<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-wordpress-developer-resources wp-block-embed-wordpress-developer-resources\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"hiFCbRGmzd\"><a href=\"https:\/\/developer.wordpress.org\/reference\/hooks\/template_redirect\/\">template_redirect<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;template_redirect&#8221; &#8212; WordPress Developer Resources\" src=\"https:\/\/developer.wordpress.org\/reference\/hooks\/template_redirect\/embed\/#?secret=Bi9dWhraQx#?secret=hiFCbRGmzd\" data-secret=\"hiFCbRGmzd\" width=\"500\" height=\"282\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-wordpress-developer-resources wp-block-embed-wordpress-developer-resources\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"iNmbfspbI7\"><a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/redirect_canonical\/\">redirect_canonical()<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;redirect_canonical()&#8221; &#8212; WordPress Developer Resources\" src=\"https:\/\/developer.wordpress.org\/reference\/functions\/redirect_canonical\/embed\/#?secret=7FyarkGXo5#?secret=iNmbfspbI7\" data-secret=\"iNmbfspbI7\" width=\"500\" height=\"282\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><br><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Les redirections d&rsquo;URLs sont principalement g\u00e9r\u00e9es via le plugin Redirection. Il permet de construire des redirections, de suivre si elles sont vraiment utilis\u00e9es par les internautes, et de rediriger automatiquement les pages renomm\u00e9es. Le plugin permet de r\u00e9aliser des redirections complexes et des configurations tr\u00e8s avanc\u00e9es. Une bonne connaissance des codes HTTP et des expressions [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_seopress_robots_primary_cat":"","_seopress_titles_title":"","_seopress_titles_desc":"","_seopress_robots_index":"","_seopress_analysis_target_kw":"","_crdt_document":"","footnotes":""},"categories":[24],"tags":[],"class_list":["post-349","post","type-post","status-publish","format-standard","hentry","category-configuration"],"_links":{"self":[{"href":"https:\/\/wordpress-kb.test.inserm.cloud-ed.fr\/index.php?rest_route=\/wp\/v2\/posts\/349","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress-kb.test.inserm.cloud-ed.fr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress-kb.test.inserm.cloud-ed.fr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress-kb.test.inserm.cloud-ed.fr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress-kb.test.inserm.cloud-ed.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=349"}],"version-history":[{"count":9,"href":"https:\/\/wordpress-kb.test.inserm.cloud-ed.fr\/index.php?rest_route=\/wp\/v2\/posts\/349\/revisions"}],"predecessor-version":[{"id":407,"href":"https:\/\/wordpress-kb.test.inserm.cloud-ed.fr\/index.php?rest_route=\/wp\/v2\/posts\/349\/revisions\/407"}],"wp:attachment":[{"href":"https:\/\/wordpress-kb.test.inserm.cloud-ed.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=349"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress-kb.test.inserm.cloud-ed.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=349"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress-kb.test.inserm.cloud-ed.fr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=349"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}