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
Config MAMP : php/mysql/phpmyadmin sur Mac OS X
MAMP on OS X, in French and English
La petite maison dans la prairie
3 jours à la ferme
11 heures d'avion
Il peut s'en passer des choses en 11 heures...
Astrologie
Je n'y crois pas...
Le clochard qui vivait de airbnb
♫ Vivre pour le meilleur
Pharmacie japonaise
mode d'emploi
Salon du chocolat
une petite visite
Kyoto - salle d'arcades
Sega ouvre toi
Le nouveau permis de conduire
Bonne ou mauvaise réforme ?
Tokyo is magic
Une soirée pas comme les autres
Mes codes open source
Des dizaines de sources et snippets, pour apprendre ou se perfectionner
Acheter une voiture d'occasion aux USA : Saison 1
Une série qui démarre sur les chapeaux de roues
Editeur hexadécimal
Comment s'en servir + exemple avec images Bitmap
Les coulisses du CES 2016
Exposer au CES pour la French Tech pour la première fois
Alcatraz
un petit tour sur cette île mythique
Tutoriel AppleScript
Les bases pour créer une belle app en AppleScript + astuces et codes sources
Comment les journalistes nous feront voter pour Hollande
Journalisme politique
Un petit déjeuner aux USA à l'accent français
Guide de survie pour expatrié
Apple Conference
Apple en panne d'inspiration ?