Configuration à l'exécution
Le comportement de ces fonctions est affecté par la configuration dans le fichier php.ini.
Nom | Défaut | Modifiable | Historique |
---|---|---|---|
phar.readonly | "1" | PHP_INI_ALL | |
phar.require_hash | "1" | PHP_INI_ALL | |
phar.extract_list | "" | PHP_INI_ALL | Disponible de phar 1.1.0 à 1.2.3, supprimé en 2.0.0. |
phar.cache_list | "" | PHP_INI_SYSTEM | Disponible à partir de phar 2.0.0. |
Voici un éclaircissement sur l'utilisation des directives de configuration.
-
phar.readonly
booléen -
Cette option désactive la création ou la modification des archives Phar en utilisant le flux phar ou le support en écriture sur les objets Phar. Ce paramètre devrait toujours être activé sur des machines de production, car le support en écriture sur les archives phar pourrait mener à la création de virus basés sur PHP en cas d'utilisation conjuguée avec des vulnérabilités communes.
Note:
Ce paramètre ne peut être désactivé que dans php.ini pour des raisons de sécurité. Si phar.readonly est désactivé dans php.ini, l'utilisateur peut activer phar.readonly dans un script ou le désactiver plus tard. Si phar.readonly est activé dans php.ini, un script pourrait "réactiver" sans danger la variable INI, mais ne pourrait pas la désactiver.
-
phar.require_hash
booléen -
Cette option forcera toutes les archives Phar ouvertes à contenir un type de signature (à ce jour MD5, SHA1, SHA256 et SHA512 sont supportés), et toute archive Phar ne contenant pas de signature sera rejetée.
Note:
Ce paramètre ne peut être désactivé que dans php.ini pour des raisons de sécurité. Si phar.require_hash est désactivé dans php.ini, l'utilisateur peut activer phar.require_hash dans un script ou le désactiver plus tard. Si phar.require_hash est activé dans php.ini, un script pourrait "réactiver" sans danger la variable INI, mais ne pourrait pas la désactiver.
Ce paramètre n'affecte pas la lecture des fichiers tar avec la classe PharData.
-
phar.extract_list
chaîne de caractères -
Ce paramètre INI a été supprimé en phar 2.0.0.
Permet la correspondance entre le chemin complet d'une archive phar ou son alias et l'emplacement de ses fichiers extraits. Le format de ce paramètre est name=archive,name2=archive2. Cela permet l'extraction de fichiers phar sur le disque, et permet à phar d'agir comme une sorte de correspondance vers des fichiers extraits sur disque. C'est souvent utilisé pour des raisons de performance ou pour aider au débogage de phar.
Exemple #1 Exemple d'utilisation de phar.extract_list
dans php.ini: phar.extract_list = archive=/chemin/complet/vers/archive/,arch2=/chemin/complet/vers/arch2 <?php include "phar://archive/content.php"; include "phar://arch2/foo.php"; ?>
-
phar.cache_list
chaîne de caractères -
Ce paramètre INI a été ajouté en phar 2.0.0
Permet aux correspondances d'archives phar d'être traitées au démarrage du serveur web, augmentant de ce fait les performance d'accès aux fichiers contenus dans une archive phar et les rendant très proche d'un accès à des fichiers d'une installation classique sur disque.
Exemple #2 Exemple d'utilisation de phar.cache_list
dans php.ini (windows):
phar.cache_list =C:\chemin\vers\phar1.phar;C:\chemin\vers\phar2.phar
dans php.ini (unix):
phar.cache_list =/chemin/vers/phar1.phar:/chemin/vers/phar2.phar
Version en cache
22/12/2024 23:28:24 Cette version de la page est en cache (à la date du 22/12/2024 23:28:24) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-phar.configuration.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.