Problème avec l'url rewriting : erreur 404.

Nouveau WRInaute
Bonjour,
ça fait plusieurs heures que je me bats avec l'url rewriting, et je n'arrive vraiment pas à trouver ce qui cloche oO Si quelqu'un pouvait m'aider, ce serait tout simplement génial !

Pour précision, je suis en mutualisé sur OVH, et j'ai bien l'url rewriting d'activé (j'ai fait les tests trouvés sur des tutoriels).

Voilà ce que j'ai : http://www.monsite.fr/monsousdomaine/location.php?annonce=$valeur
Et ce que j'aimerais : http://www.monsite.fr/monsousdomaine/$valeur

Sachant que la valeur est une chaine de caractères pouvant comprendre n'importe quelles lettres et des tirets.

Voilà ce que j'ai fait :


Code:
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(_[a-z]*)/(-[a-z]*)$ $1/location.php?annonce=$2


Je précise que mon fichier .htaccess est à la racine de mon site.


Le début est bon (enfin je crois), car lorsque j'ai fait ça, ça m'ouvrait bien la page "monsousdomaine/test.html" alors que je tapais juste "monsousdomaine/test".


Code:
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(_[a-z]*)/test$ $1/test.html


Donc l'erreur proviendrait donc de la suite. Par peur de m'être trompée dans les regex, j'ai même tenté de mettre (.*), mais rien n'a changé, j'ai toujours une erreur 404.


Si quelqu'un avait une piste... :)




PS : petite précision : ceci est en fait pour le site d'un client, je travaille actuellement sur mon serveur le temps de finir le site (afin de lui montrer les avancées et cie), et ensuite je lui donnerai tous les fichiers.
Du coup je voulais savoir : vu que là je suis dans un dossier (www.monsite.fr/dossierdusite) et qu'après ce sera à la racine de son site, je suppose qu'il va falloir que je vire toute la première partie du code ?
 
WRInaute accro
Salut,

dans ce genre de post, on utilise plutôt example.org ou .com ou .net que monsite.fr

Un producteur de vin (très) malin avait flairé les BL gratos
 
Nouveau WRInaute
Pas bête, je le saurai pour la prochaine fois !
En attendant... quelqu'un saurait-il d'où vient mon problème ?
 
WRInaute accro
Erreur 404 file not found. Ca devrait t'aider ^^ Trouve le fichier qui n'existe pas !
 
Nouveau WRInaute
oO
Euh je ne comprends vraiment pas ton intervention xD Soit tu n'as pas du tout compris mon topic, soit c'est moi qui suis à côté de la plaque !

Je sais ce qu'est une erreur 404. Le fichier qu'il ne trouve pas, c'est http://www.examplee.org/monsousdomaine/$valeur
Tout simplement parce qu'il n'existe pas physiquement !

C'est juste que mon url rewriting ne fonctionne pas, puisque normalement, lorsque l'on tape cette adresse, le serveur est sensé comprendre qu'en réalité il est sensé trouver le fichier suivant : http://www.examplee.org/monsousdomaine/location.php?annonce=$valeur

Ma question est donc : quelle erreur ai-je fait ? Pourquoi ma réécriture d'url ne fonctionne pas ? :)
 
WRInaute accro
Oue j'ai vu 404, j'ai pas cherché à comprendre =D

Essaie de tester avec une règle plus basique et de la complexifier au fur et à mesure sinon

Tu gardes juste cette partie de la règle dont tu es sure alors ^^ $1/location.php?annonce=$2 Tu verras bien ou ça coince à force

Et par monsousdomaine tu veux dire monsousdossier en fait ?
 
Nouveau WRInaute
Oui désolée, je voulais dire "monsousdossier" :)

Sinon problème résolu, j'ai finalement réalisé que j'avais fait une mauvaise regex et que tout venait de là ! Pour les intéressés, la vraie regex est : ([a-z\-]+)

Merci à ceux qui m'ont aidée :)
 
WRInaute accro
Et oui d'où l'utilité de commencer d'abord avec que des lettres pour faire marcher une version basique =D
 
Nouveau WRInaute
Oui je l'avais fait, c'est pour cela que je savais que l'url rewriting était activé sur mon serveur ^^
Et ensuite, j'avais fait légèrement plus compliqué (exemple n°2 de mon premier post) et ça marchait aussi. Mais dès que je passais à l'étape suivante ça ne marchait pas, et je n'avais pas pensé que cela pouvait venir de là (alors que maintenant que j'y pense, c'était évident).
Enfin bref, comme quoi, il faut toujours vérifier tout :p
 
Discussions similaires
Haut