[url Rewrite OVH] Problème .htaccess

Nouveau WRInaute
Bonjour,

Je suis en train de mettre en place la réécriture d'URL sur mon site,
C'est la première fois que je le fais mais cela fait déjà quelques semaines que je galère à le faire marcher.

Mes urls sont, pour le moment, toutes du style:
"http://www.monsite.com/index.php?page=accueil"
et je voudrais les mettre en:
"http://www.monsite.com/accueil/".
Voici le fichier .htaccess que j'ai actuellement:

Code:
RewriteEngine on
RewriteRule ^([^/]+)/$ /index.php?page=$1 [L]
Mais toutes mes liens internes pointes vers "http://www.monsite.com/accueil".

J'ai essayer de faire un rewrite rules par pages (mauvaise idée?) ce qui donne ça:
Code:
RewriteEngine on
RewriteRule ^([^/]+)/$ /index.php?page=accueil [L]
RewriteRule ^([^/]+)/$ /index.php?page=cours [L]
RewriteRule ^([^/]+)/$ /index.php?page=map [L]
RewriteRule ^([^/]+)/$ /index.php?page=contact [L]
...
Mais une fois de plus, tous les liens pointes vers "http://www.monsite.com/accueil".
Alors que lorsque j'écris ces règles une par une, ça marches pour n'importe qu'elles pages.

Si quelqu'un aurait une idée,
Je vous remercie d'avance.

PS: Je suis chez OVH :?

Cordialement,
Gregory
:D
 
WRInaute passionné
si tu veux pouvoir avoir des liens avec ou sans / à la fin il faut mettre :

Code:
RewriteEngine on 
RewriteRule ^(.*)/$ /index.php?page=$1 [L]
RewriteRule ^(.*)$ /index.php?page=$1 [L]

Sinon tu peux mettre :
Code:
RewriteEngine on
RewriteRule ^accueil/?$ /index.php?page=accueil [L]
RewriteRule ^cours/?$ /index.php?page=cours [L]
RewriteRule ^map/?$ /index.php?page=map [L]
RewriteRule ^contact/?$ /index.php?page=contact [L]
 
Nouveau WRInaute
Merci pour ta réponse webmasterlamogere.

si tu veux pouvoir avoir des liens avec ou sans / à la fin il faut mettre :
Code:
RewriteEngine on
RewriteRule ^(.*)/$ /index.php?page=$1 [L]
RewriteRule ^(.*)$ /index.php?page=$1 [L]
J'avais pas pensais à ça :roll:

Pour le reste, j'essayerais en fin d'aprem parce que je suis au taff là :wink:

Je vous tiens au courant.
 
Nouveau WRInaute
J'ai du nouveau :lol:

En bidouillant mes lignes, j'ai fini par arriver à ça:
Code:
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^accueil.html$ /index.php?page=accueil [L]
RewriteRule ^contact.html$ /index.php?page=contact [L]
Et à première vu, ça fonctionne.
Seul hic!
J'ai des urls genre "http://www.monsite.com/index.php?page=bwip
que j'aimerais changer en "http://www.monsite.com/techniques/bwip"

J'ai donc fais :
Code:
RewriteRule ^technique/bwip.html$ /index.php?page=bwip[L]
mais ça ne marche pas.
A savoir que le fichier include "bwip.php" est dans un dossier include.

Comment faire cela?
 
WRInaute passionné
je te conseille de tester le rewritting avec un fichier index2.php contenant uniquement phpinfo() pour vérifier que ca marche. Si cela marche comme je le pense, il faut vérifier le code de la page appelée ainsi que les includes pour voir si il n'y a pas un test sur une variable $_SERVER qui est a adapter.
 
Nouveau WRInaute
webmasterlamogere a dit:
je te conseille de tester le rewritting avec un fichier index2.php contenant uniquement phpinfo() pour vérifier que ca marche. Si cela marche comme je le pense, il faut vérifier le code de la page appelée ainsi que les includes pour voir si il n'y a pas un test sur une variable $_SERVER qui est a adapter.

J'suis larguer là :oops:
J'ai rien compris de tout ça...
 
Nouveau WRInaute
Ha! j'ai trouver!!!
J'avais un "/" qui trainer sur plusieurs règles.
Je pense que ça devrait aller maintenant.

Un grand merci à toi webmasterlamogere de m'avoir répondu aussi rapidement ;)
 
Discussions similaires
Haut