Bonjour à tous,
J'aimerais mettre en place un systeme d'url "plus propre" et qu'on voit souvent sur les sites mais je ne sais pas comment le mettre en place.
Il s'agit de cacher le nom du fichier au lieu de mettre lenomdusite.com/portofolio.php par exemple. Mettre plutot lenomdusite.com/portofolio.
Je pense que c'est avec le fichier .htaccess mais je ne m'en suis jamais encore servi.
Merci d'avance,
Cordialement,
Ce .htaccess ne réécrit pas l'url, mais si tu saisis l'url http://nomdusite.com/pages/contact tu devrais arriver sur ta page contact.php il faudra donc modifier tes urls dans ton code ;)
Salut,
Il suffit de faire un simple fichier .htaccess comme ceci :
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]
Globalement, ce qu'il se passe, c'est que si on ne spécifie pas le nom du fichier (ligne 2), alors on va prendre le nom présent dans l'url et indiquer au serveur que l'on chercher le fichier qui porte ce nom avec l’extension .php (ligne 3).
Cordialement,
Merci beaucoup pour ta réponse efficace et rapide !
Donc, je dois creer un dossier par exemple page a la racine de mon dépot ou je met toutes les pages de mon site internet sauf index.php qui se trouve directement à la racine. Ensuite je peux creer le fichier .htaccess a la racine y inserer le code ci-dessus et c'est bon ?
Je vais également chercher sur le web des infos sur ce .htaccess.
Merci beaucoup.
Hello,
Non si tu mets toutes les pages dans un dossier nommé "pages" ça ne fonctionnera pas avec cette configuration htaccess, il faudrait modifier le .htaccess comme suit :
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ pages/$1.php [NC,L]
Et il faut placer le .htaccess à la racine :)
Cordialement,
Ok, merci !
Peut on voir les changements sur le site en local ou il faut pour tester mettre le site en ligne ?
Cordialement,
Je ne connais pas ton environnement de développement, mais normalement tu peux tester en local sans problème.
Cordialement,
Je suis sous MAC OS X avec MAMP, j'ai mit le .htaccess a la racine et le index.php mais ca ne reecrit pas l'url. ca reste nomdusite.com/pages/contact.php en local.
Je vais essayer de le mettre en ligne.
Haaaaaa
D'accord, c'est bon merci, tout marche comme je le souhaitais merci beaucoup. ;)