Aller au contenu

Sujets conseillés

Posté

Bonjour,

J'essai de mettre en place un système de dossier virtuel pour un projet mais j'ai un gros problème.

J'ai cette structure :

/dossier_virtuel/ -> categorie.php?titre=$1 (ou $1 = dossier_virtuel)

RewriteEngine on
RewriteRule ([^-]*)/$ categorie.php?titre=$1 [L]

Jusque là tout fonctionne correctement.

Maintenant dans ma page categorie.php, lorsque je veux renvoyer sur un autre dossier, le dossier (qui est sensé être virtuel) apparaît dans l'url.

Imaginons que sur categorie.php je met un lien vers un autre dossier virtuel : /dossier_virtuel2/, le lien est désormais :

www.monsite.com/dossier_virtuel/dossier_virtuel2/

Je souhaiterais que ce lien (pointant vers : /dossier_virtuel2/) me renvoi à l'adresse suivante :

www.monsite.com/dossier_virtuel2

Mon htaccess est le suivant :

RewriteEngine on
RewriteRule ([^-]*)/$ categorie.php?titre=$1 [L]

Merci d'avance,

Cordialement,

Mikiman

Posté

J'ai eu le même problème, mais par manque de temps j'ai pas pus le régler.

Le problème viens du fait que tu utilise des liens relatifs, et malgré le fait que ta page se trouve a la racine sur ton serveur, le navigateur le voie dans un sous-dossier et donc il construit les lien relatifs à partir de ce sous-dossier.

Pour résoudre ton problème il faut modifier les lien relatif pour qu'il pointe vers le dossier parent, remplace :

./dossier_virtuel2/

par

../dossier_virtuel2/

Deuxième solution, tu peux choisir de construire tous tes chemins depuis la racine de ton nom de domaine. Pour cela il suffit de supprimer le point au début des liens, exemple remplace :

./dossier_virtuel2/

par

/dossier_virtuel2/

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...