Easy-Micro


LANGAGE Langage PHP
Htaccess et PHP

PHP et le fichier htaccess

Le fichier .htaccess est un fichier de configuration du serveur Web Apache dont le contenu ecrit en PERL permet de définir des règles dans un répertoire.

Interdire l'accès à un répertoire

Exemples : dans le fichier .htaccess situé dans le répertoire
Deny from all

Copier/coller cet exemple dans un fichier texte et nommé-le ".htaccess" (avec un point devant!). Installez ce fichier dans le répertoire qui doit être protégé.

Protéger un répertoire par un mot de passe (test local)

Exemple - local - dans le fichier .htaccess situé dans le répertoire
AuthName "Zone interdite"
AuthUserFile "c:/program files/easyphp5.3.0/www/stage/privee/passe.txt"
AuthGroupFile /dev/null
AuthType Basic
<limit GET POST>
require valid-user
</limit>

Installez ce fichier .htaccess dans le répertoire qui doit être protégé par mot de passe. Le contenu du fichier passe.txt (qui peut-être crypté) est du type paire de valeur nom : motdepasse (titi:password)

- La directive AuthUserFile indique le chemin (le path) du fichier de mot de passe.
- AuthGroupFile défini l'emplacement du fichier contenant les groupes d'utilisateurs autorisés.

HTACCESS en LOCAL

Attention, dans le package Easyphp, pour que le fichier de configuration htaccess fonctionne en locale, dans le fichier httpd.conf (configuration / Apache) vous devez transformer la propriété de la directive AllowOverride actuellement à "none" par "All". Soit remplacer "AllowOverride None" par "AllowOverride All" (le deuxième AllowOverride rencontré suffit, soit sur <Directory "${path}/www">).

Cette modification n'est pas nécessaire avec le package Wamp. La configuration par défaut est déjà à All sur www.

Pseudo-frame : Si vous utilisez un site web de type "pseudo-frame", les fonction PHP "include" ou "require_once" sont prioritaires sur le fichier htaccess. Donc un test avec un menu ne fonctionnerais pas.

Si vous avez des problèmes d'adressage, la fonction realpath() permet de connaître le chemin d'un fichier (le path). Créez un fichier texte avec ce code: <?php echo realpath("index.php"); ?> puis placez ce fichier à la racine de votre site. Executer ensuite ce fichier "realpath.php" depuis votre navigateur.

Redirection par URL Rewriting

Exemple : dans le fichier .htaccess situé à la racine du site :
RedirectPermanent /?page=probleme http://www.easy-micro.com/index.php?page=newprobleme

URL Rewriting

Exemple de réécriture d'adresse. Cela permet d'utiliser l'adresse http://www.easy-micro.org/planning ou http://www.easy-micro.org/planning.php qui sont deux adresses qui n'existe pas :
RewriteEngine On

RewriteRule ^planning$ /index.php?mapage=8 [L]
RewriteRule ^planning\.php$ /index.php?mapage=8 [L]

Attention, le nom utilisé (ci-dessus, planning) ne doit pas être un nom de dossier existant.

Personnaliser les messages d'erreurs (404 et 403)

Exemple dans le fichier .htaccess situé à la racine du site
ErrorDocument 403 /erreurs/403.php
ErrorDocument 404 /erreurs/404.php


Suivez les aventures des skippers aquitains sur EasyVoile.com
Flux RSS Easy-Micro - Abonnez-vous Easy-Micro [ François Bisch ]
Lundi 22 juillet 2019 - Semaine 30 - Sainte Marie-Madeleine (Demain: Sainte Brigitte)
Aujourd'hui, c'est l'anniversaire de Mireille Mathieu (1946-73 ans), chanteuse française.
Haut de page Easy-Micro