Madrileño Posté 29 Décembre 2005 Posté 29 Décembre 2005 Bonjour Voici mes problèmes : Je suis arriver sous dotclear à avoir des urls ainsi composées : http://example.example.org/index.php?titre-du-ticket http://example.example.org/index.php?categorie J'aimerais les faires passer en : http://example.example.org/titre-du-ticket.htm http://example.example.org/categorie.htm ( par l'htaccess vu que depuis les fichiers de dotclear j'avais tester les manipulations trouvées sur les sites mais aucun effet ... ) ---------- Ainsi que faire en sorte que quand quelqu'un tape : http://example.example.org/index.html http://example.example.org/index.htm http://example.example.org/index.php3 http://example.example.org/index.php4 ... Soit rediriger automatiquement vers le sous domaine : http://example.example.org/ - vu que le fichier de base index.php renvoye automatiquement nativement vers le sous domaine ce dernier n'est pas concerner ( je ne sais pas si je m'exprime bien ici ) --------- Merci d'avance
Madrileño Posté 29 Décembre 2005 Auteur Posté 29 Décembre 2005 (modifié) Je rajoute une question en plus : Si jamais j'aurais garder les urls en : http://example.example.org/index.php?2005/12/01/01-titre ou sous le format : http://example.example.org/index.php?2005/12/27/titre aurait-il été possible de les réécrires et comment... Merci beaucoup Modifié 29 Décembre 2005 par Madrileño
cognotte Posté 29 Décembre 2005 Posté 29 Décembre 2005 (modifié) Sinon pour ta premiere question : http://example.example.org/index.php?titre-du-tickethttp://example.example.org/index.php?categorie J'aimerais les faires passer en : http://example.example.org/titre-du-ticket.htm http://example.example.org/categorie.htm Options +FollowSymlinksRewriteEngine on RewriteCond %{REQUEST_URI} .*$RewriteRule ^([a-z]+)\.htm$ index.php?$1 [L] J'espere ne pas m'etre planté, en tout cas ca devrait ressembler fortement a ca Modifié 29 Décembre 2005 par cognotte
Madrileño Posté 29 Décembre 2005 Auteur Posté 29 Décembre 2005 (modifié) En fait j'ai lu relu les articles du HUB et des autres forums mais je ne vois que des index.php?q=1 et non pas des index.php?1 ... Et du coup je m'embrouilles ... J'ai compris comment faire pour un forum grace à ses articles mais pas pour la question que j'ai poser ici du coup Je viens de tester donc le code : Options +FollowSymlinksRewriteEngine on RewriteCond %{REQUEST_URI} .*$RewriteRule ^([a-z]+)\.htm$ index.php?$1 [L]RedirectPermanent /sous-dossier/ http://example.example.org/ Mais j'ai toujours l'url d'affichée : http://example.example.org/index.php?titre-du-ticket ( oui j'ai rajouter le RedirectPermanent qui est là depuis le début pour bien rediriger vers le sous domaine ) Pour : RewriteRule ^([a-z]+)\.htm$ index.php?$1 [L] Si j'ai des numéros des fois dans les titres, je ne dois pas rajouter quelque chose ? Merci pour votre rapidité de réponse j'ai mis un peu de temps pour bidouiller et écrire une réponse lisible Modifié 29 Décembre 2005 par Madrileño
petit-ourson Posté 29 Décembre 2005 Posté 29 Décembre 2005 Dans dotclear, il existe une fonction pour trouver récupérer en base un billet a partir d'un nom et non d'un ID ? Ou c'est une fonction maison ?
Madrileño Posté 29 Décembre 2005 Auteur Posté 29 Décembre 2005 Dans dotclear, il existe une fonction pour trouver récupérer en base un billet a partir d'un nom et non d'un ID ? Ou c'est une fonction maison ? <{POST_SNAPBACK}> Si c'est comment j'ai juste eut le titre ou l'id+titre c'est un plugins disponible sur le site officiel de dotclear site : http://www.dotclear.net/ Par contre ça avance pas le probleme ici qui arrive juste après
Dan Posté 29 Décembre 2005 Posté 29 Décembre 2005 Salut Madrilenõ, Réécrire tes URLs est simple: RewriteEngine onRewriteRule index.php - [L]RewriteRule index\.(html|htm|php3|php4) http://example.example.org/ [R=301,L]RewriteEngine ([a-z]+)\.html index.php?$1 [L] Cela résoud tes deux premières questions. En ce qui concerne ta dernière question (comme d'ailleurs les deux premières), as-tu gardé à l'esprit qu'il te faudra tout de même modifier les sources pour que les URLs générées par DotClear soient sous la nouvelle forme ? Dan
Madrileño Posté 29 Décembre 2005 Auteur Posté 29 Décembre 2005 (modifié) Merci, mais c'est pas gagner quand même ... ( j'ai toujours des blems moi ... ) Alors je comprends presque tout ton code sauf : RewriteRule index.php - [L] Et j'explique mes problèmes : RewriteRule index\.(html|htm|php3|php4) http://example.example.org/ [R=301,L]RewriteEngine ([a-z]+)\.html index.php?$1 [L] Me renvoye une erreur que j'en mettre un ou deux ( par contre j'ai compris à quoi ça sert donc c'est bon pour la leçon ) Rien qu'en allant sur http://example.example.org/ ... ps : quand je fais http://example.example.org/index.html et que j'ai mis le code pour les redirections cela m'affiche impossible d'afficher la page ... ( sinon oui le serveur accepte le url rewriting j'ai fais un test avant ) Et pour la dernière question je ne comprends pas ... Il faudrait en plus de url rewriting toucher encore le code ? ( Je touche jamais les codes moi donc voila ) Modifié 29 Décembre 2005 par Madrileño
Madrileño Posté 29 Décembre 2005 Auteur Posté 29 Décembre 2005 (modifié) ps : je commence à comprendre dan je vois des index.php?2005/12/01 aussi dans le calendrier je vais péter un cable ... Surtout que le code est bon et je refais les manips et rien ... C'est un hebergement 1and1 avec l'offre qui a partout en ce moment ... Modifié 29 Décembre 2005 par Madrileño
Dan Posté 29 Décembre 2005 Posté 29 Décembre 2005 Salut, Sans éditer le code, pas de réécriture autre que celle offerte par défaut sous DotClear. Comment voudrais-tu que tes URLs en .html soient créées ? Tu voudrais qu'elles tombent du plafond ? C'est à toi de les générer en modifiant les sources. Les règles du fichier .htaccess ne font jamais que la moitié du travail. Dan
Madrileño Posté 29 Décembre 2005 Auteur Posté 29 Décembre 2005 (modifié) Oki bon ba je vais voir ce que je vais décider Merci Dan au moins maintenant j'ai mieux compris l'url rewriting http://www.webmaster-hub.com/index.php?showtopic=20087 Je crois avoir trouver le pourquoi du plus gros problème donc la solution est sur le lien et par le fait que l'on ne peut dans mon cas enlever le "?" ... Tampis au moins cela servira pour les autres Modifié 29 Décembre 2005 par Madrileño
Anonymus Posté 29 Décembre 2005 Posté 29 Décembre 2005 L'url rewriting ne réécrit pas les url qui sont sur ton site. Si une page s'appelle 'domaine.com/ma-plus-belle-page-du-site', ce n'est pas l'url rewriting qui va la rappeler 'domaine .com/ma-plus-belle-page-du-site.html'. Ca, c'est en php qu'il faut le faire. Et ca se passe dans le code. Par contre, une fois que tu auras modifié, alors (et c'est à ca que sert l'url rewriting), elle sera renvoyée vers la page correspondante. (autrement dit : 'domaine .com/index.php?page=ma-plus-belle-page-du-site')
Urban Posté 30 Décembre 2005 Posté 30 Décembre 2005 Une solution simple pour dotclear, sans modifier le code mais sans .html à la fin, ce qui n'est pas très grave : Dans la configuration de dotclear choisir : * URL vers le blogue : / * Emplacement de l'application : laissez vide * Emplacement des images : /images/ * Emplacement du fil RSS : /rss.php * Emplacement du fil Atom : /atom.php * URL de trackback : /tb.php * Type des URL : Path Info Ensuite utiliser le fichier .htaccess suivant : RewriteEngine OnRewriteRule ^[0-9]{4} /index.php [QSA,L]RewriteRule ^[A-Z][a-z]+ /index.php [QSA,L] Pour que cela fonctione il faut que tes catégories commencent par une majuscule. Si tu crée des répertoires, ils ne doivent pas commencer par une majuscule ni 4 chiffres. Si tu utilise certains plugins, par exemple l'album photo, il faut ajouter une règle genre : RewriteRule ^gallery /index.php [QSA,L]
Madrileño Posté 30 Décembre 2005 Auteur Posté 30 Décembre 2005 Une solution simple pour dotclear, sans modifier le code mais sans .html à la fin, ce qui n'est pas très grave : Dans la configuration de dotclear choisir : * URL vers le blogue : / * Emplacement de l'application : laissez vide * Emplacement des images : /images/ * Emplacement du fil RSS : /rss.php * Emplacement du fil Atom : /atom.php * URL de trackback : /tb.php * Type des URL : Path Info Ensuite utiliser le fichier .htaccess suivant : "suites de codes" <{POST_SNAPBACK}> En fait j'ai fait déjà cela pour la config Le problème pour le Path Info c'est qu'il n'est pas reconnu sur le serveur de 1and1 Pour le moment je reste en : /?2005/12/01/1-ticket J'ai lu cela pour savoir que le path info bugait chez certain : http://petit.dotclear.net/pages/2005/11/16...ent-a-la-racine (en QueryString : / comme URL, pour des adresses http://example.org/?Categorie, et on a fini.) Urban je crois que c'est un cas desesperer en QueryString non ?
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant