Créer de jolies URL avec .htaccess
Question : Comment puis-je transformer une URL à partir de http://localhost /index.php?user=1&action=update vers http://localhost/user/1/update en utilisant .htaccess?
Réponse :
Pour réaliser cette transformation , vous pouvez utiliser les règles .htaccess suivantes :
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^user/([0-9]*)/([a-z]*)$ ./index.php?user=&action=
Explication :
-
Groupes de réécriture : Les parenthèses dans la RewriteRule regroupez l'identifiant de l'utilisateur ([0-9]*) et l'action ([a-z]*).
-
Correspondance de modèle : Le modèle ^user/([0-9]*)/ ([a-z]*)$ correspond aux URL telles que user/1/update.
-
Chaîne de remplacement : Le ./index.php?user=$1&action=$2 spécifie que l'identifiant d'utilisateur extrait ($1) et l'action ($2) doivent être transmis comme paramètres de requête à index.php.
Pour accéder aux paramètres en PHP :
Pour accéder aux fichiers extraits paramètres dans votre code PHP, utilisez ce qui suit :
<code class="php"><?php
echo "user id:" . $_GET['user'];
echo "<br>action:" . $_GET['action'];
?></code>
Remarque :
- Les modèles [0-9]* et [a-z]* spécifient que l'identifiant de l'utilisateur ne doit contenir que des chiffres et que l'action ne doit contenir que des caractères minuscules, respectivement.
- Le regroupement et les expressions régulières permettent des transformations d'URL plus spécifiques et plus sécurisées par rapport à l'utilisation de (.*), qui accepte presque tout.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!
Déclaration:Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn