Vous n'êtes pas identifié(e).
13 février 2024 Sortie de Dotclear 2.29
Bonjour,
Après avoir cherché (beaucoup) et pas trouvé (du tout), je fini par poser la question ici.
Sur mon ancien blog, les URL des billets étaient de cette forme :
http://franck.paul.free.fr/dotclear/?2004/10/08/1283-titre-du-billet
J'ai également un RedirectPermanent là-bas qui renvoie directement vers mon nouveau domaine (http://open-time.net).
Je souhaiterais, rediriger les anciennes URL des billets vers la nouvelle forme, à savoir en virant le ? et en rajoutant le contexte (/post/) pour obtenir, en reprenant l'exemple ci-dessus :
http://open-time.net/post/2004/10/08/1283-titre-du-billet
Pour l'instant mon .htaccess ressemble à ça (histoire de virer le index.php) :
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php/$1
RewriteRule ^index.php$ index.php/
Quelqu'un saurait quelle RewriteRule je devrais ajouter pour gérer la transformation d'URL ?
J'avais pensé à un :
RewriteRule ^?200(.*)$ index.php/post/200$1
Mais visiblement ça n'est pas une bonne idée. Vous en avez de meilleures ?
PS : Le plugin DC1Redirect est installé et actif sur le blog.
Dotclear addicted since 2004
Hors ligne
Perso je ferais la redirection à partir du site de free et si ce n'est pas possible via htaccess alors le faire en php en s'inspirant du code de dc1redirect. Il faut donc enlever le redirect permanent. ;-)
«Quand j'étais petit, je voulais être maître du monde. Maintenant que je suis grand, j'arrive à peine à être maître de moi-même.» Le Chat/Philippe Geluk.
Dotclear a besoin de vous
Hors ligne
Programmer? Non, c'est au cas où free limiterait les htaccess ;-)
Tu as essayé les redirectmatch?
«Quand j'étais petit, je voulais être maître du monde. Maintenant que je suis grand, j'arrive à peine à être maître de moi-même.» Le Chat/Philippe Geluk.
Dotclear a besoin de vous
Hors ligne
Je ne suis pas sûr qu'on ai le droit à autre chose qu'un RedirectPermanent chez Free, ce que j'ai mis en place d'ailleurs.
M'en vais regarder de quoi ça cause le RedirectMatch …
Dotclear addicted since 2004
Hors ligne
Dans le plugin dc1redirect essyaye de changer ces lignes :
core->url->register('redir_post','','^(\d{4}/\d{2}/\d{2}/\d+.+)$',array('dcUrlRedirect','redir_post'));
19 $core->url->register('redir_category','','^([A-Z]+[A-Za-z0-9_-]*)/?$',array('dcUrlRedirect','redir_category'));
20
21 if ($core->plugins->moduleExists('dayMode') && $core->blog->settings->daymode_active) {
22 $archive_pattern = '^(\d{4}/\d{2}(/\d{2})?)/?$';
23 } else {
24 $archive_pattern = '^(\d{4}/\d{2})(?:/\d{2})?/?$';
25 }
Par :
core->url->register('redir_post','','^?(d{4}/\d{2}/\d{2}/\d+.+)$',array('dcUrlRedirect','redir_post'));
19 $core->url->register('redir_category','','^([A-Z]+[A-Za-z0-9_-]*)/?$',array('dcUrlRedirect','redir_category'));
20
21 if ($core->plugins->moduleExists('dayMode') && $core->blog->settings->daymode_active) {
22 $archive_pattern = '^?(d{4}/\d{2}(/\d{2})?)/?$';
23 } else {
24 $archive_pattern = '^?(d{4}/\d{2})(?:/\d{2})?/?$';
25 }
«Quand j'étais petit, je voulais être maître du monde. Maintenant que je suis grand, j'arrive à peine à être maître de moi-même.» Le Chat/Philippe Geluk.
Dotclear a besoin de vous
Hors ligne
Ah ztu j'ai oublié la modif pour le redire_category…
19 $core->url->register('redir_category','','^?([A-Z]+[A-Za-z0-9_-]*)/?$',array('dcUrlRedirect','redir_category'));
«Quand j'étais petit, je voulais être maître du monde. Maintenant que je suis grand, j'arrive à peine à être maître de moi-même.» Le Chat/Philippe Geluk.
Dotclear a besoin de vous
Hors ligne
Pas mieux, voir http://open-time.net/?2008/07/17/1528-faire-part qui est un exemple d'URL à l'ancienne
Dotclear addicted since 2004
Hors ligne
Peut-être oui, essaye avec backslah devant…
«Quand j'étais petit, je voulais être maître du monde. Maintenant que je suis grand, j'arrive à peine à être maître de moi-même.» Le Chat/Philippe Geluk.
Dotclear a besoin de vous
Hors ligne
Pour résumer, j'ai ça :
http://open-time.net/?2008/07/17/1528-faire-part
que je voudrais voir transformé en ça (qui fonctionne très bien) :
http://open-time.net/post/2008/07/17/1528-faire-part
Dotclear addicted since 2004
Hors ligne
Je tenterais avec ça :
RewriteCond %{QUERY_STRING} ^([0-9]{4}/[0-9]{2}/[0-9]{2}/[0-9]+.*)$
RewriteRule ^index.php http://open-time.net/post/%1 [R,L]
et si ça marche je crois qu'il faut traiter les catégories et les archives aussi :
RewriteCond %{QUERY_STRING} ^([A-Z][a-z]+.*)$
RewriteRule ^index.php http://open-time.net/category/%1 [R,L]
# mois
RewriteCond %{QUERY_STRING} ^([0-9]{4}/[0-9]{2})$
RewriteRule ^index.php http://open-time.net/archive/%1 [R,L]
En ligne
Gloups, spa encore ça mais y'a du mieux ;-)
Je me retrouve avec ça :
http://open-time.net/post/2008/07/17/1528-faire-part?2008/07/17/1528-faire-part
Vala mon .htaccess :
RewriteEngine on
RewriteBase /
RewriteCond %{QUERY_STRING} ^([0-9]{4}/[0-9]{2}/[0-9]{2}/[0-9]+.*)$
RewriteRule ^index.php http://open-time.net/post/%1 [R,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php/$1
RewriteRule ^index.php$ index.php/
Dotclear addicted since 2004
Hors ligne
Argh, et sans le %1 ?
RewriteCond %{QUERY_STRING} ^([0-9]{4}/[0-9]{2}/[0-9]{2}/[0-9]+.*)$
RewriteRule ^index.php http://open-time.net/post/ [R,L]
Dernière modification par Philippe (2009-05-07 16:01:12)
En ligne
Je vais essayer, mais en tout cas, en mettant un $1 à la place du %1 on obtient cette URL :
http://open-time.net/post/?2008/07/17/1528-faire-part
Plus que le ? a faire sauter et ça sera super \o/
Dotclear addicted since 2004
Hors ligne
On a trouvé (j'ai de l'aide précieuse à côté de moi) :
RewriteRule ^index.php http://open-time.net/post/%{QUERY_STRING}? [R=301,L]
Ça provient d'ici : http://www.think-underground.com/post/2 … ns-douleur
Dotclear addicted since 2004
Hors ligne
Il y a toujours un problème avec les catégories…
«Quand j'étais petit, je voulais être maître du monde. Maintenant que je suis grand, j'arrive à peine à être maître de moi-même.» Le Chat/Philippe Geluk.
Dotclear a besoin de vous
Hors ligne
Je fais l'impasse sur les catégories car ça m'étonnerais que celles-ci soient référencées à l'extérieur de l'ancien blog. J'ai le traitement actif pour les billets et les flux RSS et Atom (billets et commentaires) ce qui sera amplement suffisant.
Dotclear addicted since 2004
Hors ligne
Vous n'êtes pas identifié(e).