Url rewriting avec dossiers virtuels

  • Auteur de la discussion Auteur de la discussion allserv
  • Date de début Date de début
Nouveau WRInaute
Bonsoir @ tous,

Voilà j'ai des pages du type :

fiche_casting.php?c=1&ref=v4

J'aimerais avoir une url du type :

monsite.com/v4/1/

J'ai fait le htaccess suivant :

RewriteEngine on
RewriteRule ^index.html$ index.php [L]
RewriteRule ^castings/([a-zA-Z0-9]+)/([0-9]+)/(.*)/$ fiche_casting.php?c=$2&ref=$1 [L]

Ca ne fonctionne pas ca me redirige sur castings.php (allez savoir pourquoi)

Quelqu'un pourrait m'aider ?

Merci d'avance

ps : j'ai mis dans le head de ma page
<base href="http://monsite.com/" >
 
Nouveau WRInaute
et comme ceci ? :
RewriteRule ^castings/([a-zA-Z0-9]+)/([0-9]+)/(.*)\.htm$ /fiche_casting.php?c=$2&ref=$1 [L]

avec le lien:
<a href="http://monsite.com/castings/v4/1/fiche_casting.htm">fiche_v4_1</a>

slash en vert pour OVH

pas vu : posté en même temps que j0k3r_n0ir
 
WRInaute discret
Salut,

Je crois qu'il faut "antislasher" les slashes :

Code:
RewriteRule ^casting\/(.*)\/(.*)\/$ fiche_casting.php?c=$2&ref=$1 [L]

A explorer. :)

Doug
 
Nouveau WRInaute
Je comprends vraiment pas j'ai tout essayé avec toutes vos infos mais rien ne fonctionne, je vous donne mon dernier htaccess :

RewriteEngine on
RewriteRule ^index.html$ index.php [L]
RewriteRule ^castings/([a-z0-9\-]+)/([0-9]+)$ /fiche_casting.php?c=$2&ref=$1 [NC,L]
RewriteRule ^castings/([a-zA-Z0-9]+)/([0-9]+)/(.*)\.htm$ /fiche_casting.php?c=$2&ref=$1 [NC,L]

J'en ai essayé deux d'ailleurs ds ce dernier exemple mais rien n'y fait, doit on mettre des antislash ?
 
Nouveau WRInaute
L'antislash permet d'enlever au caractère qui le suit sa signification particuliere (soit le . dans .html qui veut dire n'importe quel caractere).
Sur quel serveur le site tourne-t-il?
ceci n'est pas mieux?:
RewriteRule ^(.+)/castings/([a-zA-Z0-9]+)/([0-9]+)/(.*)\.htm$ /fiche_casting.php?c=$2&ref=$1 [NC,L]

la premiere regle marche-t-elle (index.html)?
 
WRInaute discret
Salut,

Tu peux essayer un truc dans le genre :

Code:
RewriteRule ^([a-zA-Z0-9]+)\/([0-9]+)(.?|\/)$ fiche_casting.php?c=$2&ref=$1 [L]

Si tant est que ta page fiche_casting.php soit à la racine de ton site.

Cela te permet d'avoir :

-monsite.com/v4/1/

et

-monsite.com/v4/1 (sans le slash quoi)

A+

Doug
 
Discussions similaires
Haut