Version complète: sur le forum Webmaster Hub : Réécriture d'une url avec dossier virtuel
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > Fichier .htaccess et réécriture d'URLs
Spark
Bonjour tous le monde,

Aujourd'hui je but sur les url rewriting. Merci de vous intéresser à mon cas :-)


Voici les liens actuelle :

CODE
download/index.php?rep=dossier&id=EXP_Fichier_1.1_.7z


Et donc j'aimerais obtenir (répertoire virtuel donc) :

CODE
download/dossier/EXP_Fichier_1.1_.7z


Voilà le code que j'ai testé :

CODE
RewriteEngine On
RewriteRule ^download/([a-z]*)-([A-Za-z0-9_.]*)$ /download/index.php?rep=$1&id=$2 [L]



Avec un lien comme ça :
CODE
http://fr.monsite.net/download/dossier-EXP_Fichier_1.1_.7z



Jusque là ça marche, le téléchargement de EXP_Fichier_1.1_.7z se lance. Mais dès que je remplace par (répertoire virtuel):

CODE
RewriteRule ^download/([a-z]*)/([A-Za-z0-9_.]*)$ http://fr.monsite.net/download/index.php?rep=$1&id=$2 [L]



Là ça ne fonctionne plus, j'ai un 404.


Où est-ce que ça cloche avec le répertoire virtuel ? Je ne souhaite pas utiliser <base href=... dans le head.

Pouvez m'aider à optimiser la syntaxe des expressions régulières ?


Merci d'avance smile.gif

PS : je sais pas vous mais ce tuto me dit quelque chose :
h**p://www.spip-contrib.net/La-reecriture-des-URL-a-la-volee
Dudu
CITATION(Spark @ samedi 7 juillet 2007 à 18:27) *
PS : je sais pas vous mais ce tuto me dit quelque chose :
h**p://www.spip-contrib.net/La-reecriture-des-URL-a-la-volee
Évidemment puisqu'il a été écrit par Dan lui-même wink.gif
C'était avant la mise en ligne de Webmaster-Hub.
Spark
Je vois,

Mais sinon pour mon problème de dossier virtuel ? Quelqu'un à une idée ? Je précise que si je crée le dossier virtuel ça fonctionne, même si je ne mets pas de lien absolu dans .htaccess.
JCweb
Salut,

404, t'es pas loin,c 'est que le chemin apres rewriting est pas bon,
as tu essayé :

CODE
RewriteRule ^download/([a-z]*)/([A-Za-z0-9_.]*)$ /download/index.php?rep=$1&id=$2 [L]
OU
RewriteRule ^download/([a-z]*)/([A-Za-z0-9_.]*)$ index.php?rep=$1&id=$2 [L]


Je crois que ça dépends où est ton .htaccess
Spark
Bonsoir,

CODE
RewriteRule ^download/([a-z]*)/([A-Za-z0-9_.]*)$ /download/index.php?rep=$1&id=$2


Cette ligne ne peut fonctionné conformément au mise en garde par rapport au dossier virtuel. Sauf si on utilise un lien absolu (comme j'ai fais), mais moi je dois en plus créer les dossiers virtuel sur le serveur(config actuelle), mais je ne souhaite pas avoir des dossiers qui se baladent pour rien.

CODE
RewriteRule ^download/([a-z]*)/([A-Za-z0-9_.]*)$ index.php?rep=$1&id=$2 [L]


Non là je ne vois pas ou tu veux en venir ? index.php n'est pas à la racine du site. J'ai toutefois essayé tes deux proposition et ça ne fonctionne pas.

CITATION
Je crois que ça dépends où est ton .htaccess

Je croyais que pour le rewriting il fallait obligatoirement le mettre à la racine ? je vais explorer cette piste avec le code que tu a donné notamment.

Merci
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.