J'énumère environ 9 000 enregistrements sur mon petit site. En ce moment, je leur montre une page dynamique, comme
http://domain.com/records.php?id=019031
Mais j'aimerais commencer à utiliser des URL significatives comme celle-ci sur Amazon.
http://www.Amazon.co.uk/Library-Mythology-Oxford-Worlds-Classics/dp/0199536325
où la chaîne de titre au niveau racine est ignorée et les demandes sont redirigées vers la page records.php, qui accepte l'ID comme d'habitude.
Est-ce que quelqu'un sait comment je pourrais y arriver avec mod_rewrite? Je me demande comment je pourrais traiter les requêtes adressées à mes autres pages de niveau racine, telles que http://domain.com/contact.php
, que je ne souhaite pas rediriger vers la page d'enregistrements.
Essayez ceci dans la racine de votre .htaccess:
RewriteEngine on
RewriteRule ^[^/]+/(\d+)$ records.php?id=$1 [QSA]
http://example.com/foo-bar/42
sera réécrit en http://example.com/records.php?id=42
Cela n'affectera pas les URL telles que contact.php
, car il ne correspond pas à ^[^/]+/(\d+)$