Site Perso de

Thomas JANNAUD

Des actualités personnelles sous un style impersonnel, et inversement.



Url propres avec .htaccess / Minimal urls using .htaccess
Un peu d'aide sur .htaccess ça ne se refuse pas ! Who doesn't need a little help with .htaccess :) 19 Juin 2011

First part in French, 2nd part in English

Adieu les ".php" qui traînent, pour configurer votre htaccess pour avoir des url comme https://jannaud.fr/prog, c'est ici ! Voici la solution, obtenue après plusieurs heures de combat acharné et des lectures entières de forums.

Dans cet exemple, on suppose que l'on aimerait que monsite.com/xxxxx soit traité par la page blog.php comme si l'url entré était monsite.com/blog.php?page=xxxx.

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^blog/(.*)$ blog.php?page=$1 [L]
RewriteCond %{REQUEST_URI} !=/
RewriteCond %{REQUEST_URI} !news.xml
RewriteCond %{REQUEST_URI} !robots.txt
RewriteCond %{REQUEST_URI} !.php$
RewriteRule ^([^/]*)$ $1.php

Ceci permet de remplacer monsite.com/toto par monsite.com/blog.php?page=toto, tout en ne réécrivant pas les url de certains fichiers statiques (news.xml, robots.txt, …) ni de l'adresse si elle est déjà écrite avec .php à la fin.
Plus d'infos sur comment monter son site web et les fichiers .htaccess.

Les serveurs n'ont pas tous la même configuration, ainsi un .htaccess qui fonctionnera chez vous en local ne fonctionnera peut être pas chez votre hébergeur ! Il faudra peut être ajouter des slashs devant des points / des parenthèses, ..., par exemple remplacer xxx.php par xxx\.php. Sur certains serveurs, il faudra aussi mettre des slashs DEVANT le nom des pages :

RewriteRule ^blog/(.*)$ /blog.php?page=$1 [L]
...
RewriteRule ^([^/]*)$ /$1.php

Ecrivez votre .htaccess morceaux par morceaux, commentez certaines lignes (avec #) pour déboguer et voir quelle syntaxe votre serveur reconnait.


No more trailing .php on your website. To configure your .htaccess to have clean urls like https://jannaud.fr/prog, here is the solution.
It was a real pain in the ass to figure out how to so I hope this will be useful and save some time to lots of folks.

In this example, we suppose that we would like yoursite.com/xxxxx be treated by blog.php as if the real input was yoursite.com/blog.php?page=xxxx.

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^blog/(.*)$ blog.php?page=$1 [L]
RewriteCond %{REQUEST_URI} !=/
RewriteCond %{REQUEST_URI} !news.xml
RewriteCond %{REQUEST_URI} !robots.txt
RewriteCond %{REQUEST_URI} !.php$
RewriteRule ^([^/]*)$ $1.php

This will turn the input yoursite.com/foo into yoursite.com/blog.php?page=foo. This will not rewrite the url to some static files (news.xml, robots.txt, …) nor the ones with .php already in the url.

Be careful about one thing : All servers don't have the same config so a .htaccess working locally might not work on your website. A few hints that could do the trick : place some slashs before points, parenthesis, ..., for instance replace xxx.php by xxx\.php. On certain servers, you will have to put a slash BEFORE page names (the resulting one, not the one triggering the rule) :

RewriteRule ^blog/(.*)$ /blog.php?page=$1 [L]
...
RewriteRule ^([^/]*)$ /$1.php

Play with your .htaccess parts by parts, comment out certain lines (with #) to debug and see what your server expects.

Laissez un commentaire !

Pas besoin de vous connecter, commencez à taper votre nom et une case "invité" apparaîtra.

Créer un site web : Tutoriel complet
Créer, designer, héberger, rentabiliser
Automator et Applescript
Impimer plusieurs liens URL / pages internet en PDF
Print many URL / webpages in PDF
Fils RSS
qu'est ce qu'un fil RSS et comment en créer ?
PHP/MySQL conseils/tips
In French and English
Troubleshooting with iOS. UI tips
Cocoa tips
Config MAMP : php/mysql/phpmyadmin sur Mac OS X
MAMP on OS X, in French and English
Roman Gary ou les cerfs volants
Poursuivre le bleu
Guatemala - Côte Caribéenne et culture Afro
Little Miami et rythme reggae
Alcatraz
un petit tour sur cette île mythique
Kyoto - Photos
Premières photos
L'innovation chez Casino
Ce n'est pas un vain mot. Une véritable révolution !
Macron : et maintenant, en marche !
Lendemain d'élection 2017
Cadeaux d'anniversaire
J'ai trouvé ce que je veux !
L'avenir du thon rouge
Vote aujourd'hui à Doha...
Les 100 livres à ne pas lire
Comment éviter les massacres
Les îles grecques - Visite de Santorin
Le bleu, le blanc, le temps d'un vœu
Le déménagement
ça déménage ! ou pas
Loi contre le téléchargement illégal
Le Sénat vient de voter la loi d'Albanel. Qu'en pensez-vous ?
Accident
Scoop ! Verglaplanning sous mes fenêtres en photo !
La prison à 12 ans
Du bon et du mauvais
2 semaines en Malaisie
Mais allez-y pas !
Petites nouvelles
s'agit-il de stagiaires ? :)
J'ai testé pour vous
le rugby en 3D
J'ai essayé le kitesurf strapless
Impressions et conseils