Langages du Web – PHP (M2 CCI) Réécriture des URL Les fichiers

Transcription

Langages du Web – PHP (M2 CCI) Réécriture des URL Les fichiers
Sites statiques
Réécriture des URL
Réécriture des URL
▶
Langages du Web – PHP (M2 CCI)
http ://...perso.luminy.univ-amu.fr
http ://...perso.luminy.univ-amu.fr/aboutme.html
Bertrand Estellon
http ://...perso.luminy.univ-amu.fr/cv.html
Aix-Marseille Université
Département Informatique et Intéractions
http ://...perso.luminy.univ-amu.fr/blog.html
17 janvier 2017
http ://...perso.luminy.univ-amu.fr/contact.html
▶
.
Bertrand Estellon (AMU)
.
.
.
.
.
. . . .
. . . .
Langages du Web – PHP (M2 CCI)
Sites statiques
Nous souhaitons que les différentes pages aient les URL suivantes :
. . . .
. . . .
. . . .
. . . .
.
.
.
.
17 janvier 2017
.
.
.
.
.
Nous souhaitons également qu’il ne soit pas possible d’exécuter ou
d’accéder aux autres fichiers du répertoire
.
.
1 / 179
Bertrand Estellon (AMU)
Réécriture des URL
Sites statiques
.
.
.
.
.
. . . .
. . . .
Langages du Web – PHP (M2 CCI)
. . . .
. . . .
. . . .
. . . .
.
.
Les fichiers .htaccess :
Si le module de réécriture des règles est installé, on peut écrire dans le
fichier .htaccess les lignes suivantes :
▶
doivent être placés dans des répertoires servis par le seveur
.
.
.
.
RewriteEngine On
RewriteRule ^$ index.php [END,QSA]
RewriteRule ^(.*)\.html$ index.php ?page=$1 [END,QSA]
RewriteRule ^(.*)$ - [L,R=404]
Les utilisations possibles des fichiers .htaccess :
▶
interdire l’accès à des fichiers
▶
mettre en place des règles de réécriture pour les URL
▶
protéger l’accès à un répertoire ou un fichier par un mot de passe
▶
choisir les pages d’erreurs
▶
Ajouter des mime-types
▶
...
La syntaxe :
RewriteRule Modèle Substitution [drapeaux]
Dans les sous-répertoires :
RewriteEngine Off
.
Bertrand Estellon (AMU)
.
Réécriture des URL
Les fichiers .htaccess de configuration d’Apache
permettent de définir des règles
.
66 / 179
Les fichiers .htaccess de configuration d’Apache
▶
.
.
17 janvier 2017
Langages du Web – PHP (M2 CCI)
.
.
.
.
.
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
.
.
17 janvier 2017
.
.
.
.
.
.
.
67 / 179
.
.
Bertrand Estellon (AMU)
Langages du Web – PHP (M2 CCI)
.
.
.
.
.
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
.
.
17 janvier 2017
.
.
.
.
.
.
.
68 / 179
.
Sites statiques
Réécriture des URL
Les fichiers .htaccess de configuration d’Apache
La syntaxe :
RewriteRule Modèle Substitution [drapeaux]
Le modèle est une expression régulière :
▶
^ : début de ligne
▶
$ : fin de ligne
▶
. : n’importe quel caractère
▶
( ) : pour définir les $x dans la substitution
Les drapeaux :
▶
END : termine le processus de réécriture pour ce répertoire
▶
QSA : conserve les chaîne de paramètres de l’URL de départ
▶
L : termine le processus de réécriture
▶
R=xxx : force une redirection avec un code de statut HTTP optionnel
.
Bertrand Estellon (AMU)
Langages du Web – PHP (M2 CCI)
.
.
.
.
.
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
.
.
17 janvier 2017
.
.
.
.
.
.
.
69 / 179
.