Maison > Questions et réponses > le corps du texte
P粉3203612012023-08-28 22:34:33
Commentaire explicite de Mike 'Pomax' Kamermans sur la façon dont cela devrait être fait. Cependant, la documentation du manuel PHP peut être un peu rebutante.
Et quelques précisions sur d'autres réponses :
L'utilisation d'un fichier d'analyseur PHP (comme décrit dans Lajos Arpad) ajoute des risques de sécurité et un tas d'encodage, de syntaxe et une surcharge de traitement vraiment inutile.
.htaccess
确实可以为某些 PHP 安装设置自定义 ini 指令,但如果您使用的是“FastCGI”或“CGI”(可能还有 suPHP) ) PHP 安装实际上会导致您的网站崩溃并出现 500 错误,因此请使用本地 .user.ini
fichiers comme décrit ici. Comment retrouver mon SAPI ?
Seulement utilisez .htaccess
si vous exécutez PHP en tant que module Apache (par exemple mod_php). Comment retrouver mon SAPI ?
Alors, comment votre souhait devrait-il être exaucé ?
Lisez le fichier PHP.ini de la version actuelle de PHP.
À la ligne 180 (pour PHP 8.1), cela devrait ressembler à ceci :
Notez la valeur, Je vous recommande de la personnaliser (comme indiqué dans cet exemple). Cette valeur est le nom d'un fichier qui sera situé dans chaque compte unique sur le serveur qui contient les paramètres « locaux » spécifiques au compte pour le fichier PHP.ini global.
Le fichier commence généralement par public_html
文件夹中,因此应以 .
afin qu'il soit masqué par défaut (nous en reparlerons plus tard). Si ce fichier n'existe pas, les paramètres PHP principaux du compte ne seront pas modifiés.
Vous connaissez/avez maintenant défini le nom de votre fichier PHP personnalisé ; générez maintenant le fichier dans votre compte et vous pouvez ensuite définir les paramètres PHP.ini que vous souhaitez personnaliser individuellement pour ce compte.
Par exemple :
contiendra les exemples d'informations suivants :
; ; Some optional comment text here for human consumption ; session.cookie_secure=1 session.save_path=/home/sitea.com_account/sessions session.name=session-sitea error_log=/home/sitea.com_account/errors/PHP_errors.log upload_max_filesize=50M
Ces informations sont analysées par PHP et remplacent toute valeur correspondante dans le noyau PHP.ini, mais uniquement pour ce compte.
Par exemple, pour votre fichier ini utilisateur php siteb.com, cela ressemblerait davantage à ceci :
contiendra les exemples d'informations suivants :
; ; Some optional comment text here for human consumption ; session.cookie_secure=1 session.save_path=/home/siteb.com_account/session_b session.name=site-b-UniqueSession error_log=/home/siteb.com_account/errors/PHP_errors.log upload_max_filesize=5M
Vous pouvez ensuite vérifier que ces paramètres de compte sont correctement définis en explorant phpinfo()
sur chaque compte et en notant les différences locales et principales affichées.
/public_html/
Le fichier principal user.ini dans le chemin doit contenir tous les fichiers nécessaires pour que chaque sous-fichier/dossier de ce compte soit traité (cela dépend parfois de la configuration exacte de votre serveur LAMP et de votre gestionnaire PHP).
Comme je l'ai dit, une fois le fichier ini de test configuré, vous devez exécuter phpinfo()
pour vérifier si ses valeurs sont implémentées.
Si vous ne souhaitez pas utiliser phpinfo()
那么您可以轻松使用 [ini_get](https://www.php.net/manual/en/function .ini-get)
, vous pouvez facilement utiliser [ini_get](https://www.php.net/manual/en/function .ini-get)
pour vider les données sensibles au journal des erreurs plutôt qu'au navigateur.
<?php error_log("ini data for this account: ".ini_get('upload_max_filesize')); exit;
user.ini se termine généralement par .
字符开头,以将其隐藏在目录中,但这并不意味着浏览器代理无法访问它,因此最好添加几行添加到您的 .htaccess
pour refuser l'accès à ce fichier.
<Files .account-php81.ini> Require all denied </Files>
Quelques réflexions finales :
Les valeurs principales de PHP.ini changent dans les nouvelles versions de PHP, la meilleure pratique consiste donc à utiliser différents fichiers .ini locaux pour différentes versions de PHP (.account-php80.ini
, <代码>.account-php81.ini等)。请注意,每个 php.ini
Core doivent tous appeler explicitement leur fichier user.ini local respectif, comme décrit à l'étape 1 ci-dessus
Les principes ci-dessus sont décrits dans le manuel PHP et doivent être notés :
P粉1447050652023-08-28 14:10:59
Vous pouvez les paramétrer dans le fichier .htaccess
文件来设置 PHP 配置值 - 至少对于大多数设置:如果您查看 在配置指令文档中,对于标记为 PHP_INI_PERDIR
或 < code>PHP_INI_ALL 您可以使用 PHP php_value 或 php_flag
命令在 .htaccess
de chaque site (ou même de chaque dossier) en utilisant ="https://www.php.net/manual/en/configuration.changes.php" rel="nofollow noreferrer"> "Comment pour modifier les paramètres de configuration" Documentation.
Par exemple, pour créer un fichier upload_max_filesize
,请在该网站的文档根目录中创建一个 .htaccess
sur votre site Web et y mettre du texte :
php_value upload_max_filesize 24M
Malheureusement, je les change dans max_file_uploads
和 upload_tmp_dir
是标记为 PHP_INI_SYSTEM
的设置,您无法在 .htaccess
fichiers...