URL rewriting et /

Nouveau WRInaute
Bonjour à tous,

je suis en train de travailler sur mes URLs en ce moment, mais je bloque :

je voudrais réécrire

exemple.com/v2/photos.php?image=mon-image.jpg
en
exemple.com/v2/photos/mon-image.jpg


Mais impossible !!

Alors j'ai essayé en réécrivant de cette manière :
exemple.com/v2/photos-mon-image.jpg

et ça j'y arrive !!


Voici mon code :

RewriteRule ^photos-([a-zA-Z0-9-.]+)$ /v2/photos.php?image=$1 [L]


Comment mettre le / ? ou alors est-ce impossible ?

Merci !!
 
WRInaute accro
Est-ce que ce que tu veux faire est bien ceci:

Une URL du type example.com/v2/photos/foo-bar.jpg affichée dans le navigateur doit aller chercher le script v2/photos.php et lui envoyer $_GET['image'] = 'foo-bar' ?
 
Nouveau WRInaute
Oui tout à fait !!

Et je précise que mon code :

RewriteRule ^photos-([a-zA-Z0-9-.]+)$ /v2/photos.php?image=$1 [L]

fonctionne mais bien sur c'est l'URL exemple.com/v2/photos-mon-image.jpg qui existe

Mais avec

RewriteRule ^photos/([a-zA-Z0-9-.]+)$ /v2/photos.php?image=$1 [L]

l'URL exemple.com/v2/photos/mon-image.jpg ne me mène pas à exemple.com/v2/photos.php?image=mon-image.jpg


Voilà, merci merci.
 
WRInaute accro
- Est-ce que ça te renvoie une erreur 500 ?
- Est-ce qu'on est bien d'accord que l'url affichée est bien du type /v2/blah ?

--> essaye en échappant les slashes:

Code:
RewriteRule ^v2\/photos\/(.*)\.jpg$ v2/photos.php?image=$1 [L]
 
WRInaute occasionnel
salut il y a des caracteres a échapper : les suivants
Code:
[\^$.|?*+()
ca veut dire les faire précéder d'un antislash...

essaie ca
RewriteRule ^/?[^=]+=([^\.])\.jpe?g$ /v2/photos.php?image=$1 [L]
 
Nouveau WRInaute
Merci pour ton essai michel.leonard, mais ca ne fonctionne pas !

Et je n'ai que ca dans mon .htaccess
 
WRInaute impliqué
HawkEye a dit:
J'aurais fait ceci:

Code:
RewriteRule ^v2/photos/(.*)\.jpg^ v2/photos.php?image=$1 [L]

++


J'ai remarqué des erreurs (je pense). Ceci devrait fonctionner :
Code:
RewriteRule ^v2/photos/(.*)\.jpg$ ./v2/photos.php?image=$1.jpg [L]

Mais, si tu ne veux pas te limiter au format JPG, tu peux faire :
Code:
RewriteRule ^v2/photos/(.*)\.(jpg|png|gif|etc)$ ./v2/photos.php?image=$1.$2 [L]
 
Discussions similaires
Haut