8791 sujets

Développement web côté serveur, CMS

Bonjour,
je suis en train de créér un site de blogs,
mes urls sont au format http://blog.xxxxxxxxx.net/index.php?blog=PSEUDO
je voudrais simplifier les URLs, j'ai donc été tout naturellement sur la voie de l'URL Rewriting,
j'ai donc construit un fichier .htaccess sur la racine du site, qui comprend :

RewriteEngine on
RewriteRule ^(.*)/$  index.php?blog=$1 [L]


ca fonctionne comme il faut, mais je dois mettre un slashe à la fin de la variable :
http://blog.xxxxxxxx.net/PSEUDO/
si je ne met pas ce slashe a la fin, j'ai une belle erreur 404 ...

existe-t-il une solution qui permettrais que l'URL soit comprise avec ou sans slashe ?
http://blog.xxxxxxxx.net/PSEUDO/
ou
http://blog.xxxxxxxx.net/PSEUDO
vers
http://blog.xxxxxxxx.net/index.php?blog=PSEUDO

Merci pour votre aide ! Smiley cligne
Modifié par Ddjay (18 Jul 2009 - 17:38)
voila en fouillant un peu, j'ai modifié mon .htaccess comme suit :


RewriteEngine on
RewriteRule ^(.*)/$  index.php?blog=$1 [L]
RewriteRule ^([a-zA-Z0-9-]+)$ index.php?blog=$1 [L]


et maintenant les URLs du type http://blog.xxxxxxxxxxxx.net/PSEUDO/ ET http://blog.xxxxxxxxxxxx.net/PSEUDO (sans slashes) fonctionnent

et pour les liens, j'ai tout simplement mis
<base href="http://blog.xxxxxxxxxxxx.net/" />

entre <head> et </head>, pour eviter que les liens ressemblent a qqch du genre http://blog.xxxxxxxxxxxx.net/PSEUDO/images/logo.gif alors que ca devrait etre
http://blog.xxxxxxxxxxxx.net/images/logo.gif sans la variable ...

et tout a l'air de fonctionner au poil ! si ca peut servir a quelqu'un qui s'arracherais les cheveux comme moi pour les dossiers virtuels ... je suis heureux que ca serve !

@bientot !
Un peu tard mai sinon :
RewriteRule ^([a-zA-Z0-9-]+)/?$ index.php?blog=$1 [L]

Devrait aussi faire ce que tu veux je pense Smiley cligne (le "/" de la fin devenant facultatif)