Ouvrez l'ini php. Comment modifier un paramètre dans la configuration PHP ? Peut-être qu'une solution utilisant .htaccess vous conviendra

Pour résoudre certains problèmes lors de l'exécution d'un site Web, vous devez modifier les valeurs des paramètres dans la configuration PHP. Vous pouvez le faire de deux manières :

  1. Modifier la valeur du paramètre dans fichier de configuration php.ini. Après avoir modifié le fichier, vous devez redémarrer le serveur Web pour que les modifications prennent effet. Accès aux fichiers php.ini, en règle générale, seul l'administrateur du serveur en dispose. Utilisateurs hébergement virtuel vous n'avez généralement pas la possibilité de modifier ce fichier et pouvez utiliser la deuxième méthode.
  2. Remplacer la valeur d'un paramètre dans un fichier .htaccess. Règles de base pour créer un fichier .htaccess sont:
    • si le paramètre ne peut avoir que des valeurs Sur ou Désactivé(ou 1 ou 0 ), puis dans le fichier .htaccess devrait ajouter la ligne le type suivant:php_ drapeau

      Par exemple:

      Php_flag display_errors 1

      display_errors,short_open_tags, journal_erreurs.

    • dans d'autres cas, la ligne du fichier .htaccess devrait ressembler à php_ valeur PARAMETER_NAME PARAMETER_VALUE

      Par exemple:

      Valeur_php limite_mémoire 64 M

      Exemples de paramètres dont les valeurs peuvent être modifiées de cette manière : limite_mémoire,post_max_size, max_execution_time.

Attention: Remplacement des paramètres de configuration PHP à l'aide d'un fichier .htaccess peuvent ne pas être autorisés sur votre serveur. Par exemple, ces fichiers ne sont pas pris en compte Serveur Web IIS, et aussi Serveur Web Apacheà en utilisant PHP comme CGI. Pour modifier les paramètres sur de tels serveurs, vous devez soit éditer le fichier vous-même php.ini, ou contactez votre administrateur système.
  • Quels fichiers stockent les paramètres de connexion à la base de données ?
  • Comment modifier un paramètre dans la configuration PHP ?

Modification de php.ini
Le fichier de configuration PHP php.ini est très long et peut être intimidant pour les programmeurs débutants, mais il n'y a pas de quoi s'inquiéter. C'est normal fichier texte, et l'une des raisons de sa longueur est le contenu de nombreux commentaires expliquant divers paramètres. Cependant, c'est une bonne idée de faire copie de sauvegarde avant de modifier php.ini au cas où vous auriez fait une erreur.
La façon dont vous ouvrez le php.ini pour le modifier dépend de votre système opérateur et d'après la façon dont vous avez installé PHP :

  • Si vous avez utilisé un package tout-en-un tel que XAMPP sous Windows, double-cliquez sur php.ini dans Explorateur Windows. Le fichier s'ouvrira automatiquement dans le Bloc-notes.
  • Si PHP est installé à l'aide de l'outil Microsoft Web PI, php.ini se trouve généralement dans un sous-dossier Fichiers programme. Bien que vous puissiez ouvrir le php.ini en double-cliquant dessus, vous ne pourrez enregistrer aucune modification. Choisissez plutôt Démarrer => Tous les programmes => Accessoires, cliquez clic droit souris par Bloc-notes, puis sélectionnez Exécuter en tant qu'administrateur dans menu contextuel. DANS Programme Bloc-notes sélectionner Fichier => Ouvrir et définissez l'option pour afficher Tous les fichiers (*.*). Accédez au dossier où se trouve php.ini, sélectionnez le fichier et cliquez sur le bouton Ouvrir.
  • Sous Mac OS X, php.ini apparaît dans le Finder sous la forme fichier exécutable. Utiliser éditeur de texte tels que BBEdit ou TextWrangler (tous deux disponibles auprès de www.barebones.com) pour ouvrir le php.ini.

Pour les directives qui utilisent On ou Off, remplacez simplement la valeur par la valeur recommandée. Par exemple, si vous souhaitez activer les messages d'erreur, modifiez cette ligne :
display_errors = Désactivé
Remplacez-le par ce qui suit :
display_errors = Activé

Pour définir le niveau des messages d'erreur, vous devez utiliser des constantes PHP, écrites en majuscule et sensible à la casse.

Pour PHP 5.3, la directive devrait ressembler à ceci :
error_reporting = E_ALL | E_STRICT
Le caractère entre E_ALL et E_STRICT est une barre verticale. Sur la plupart des claviers, vous pouvez l'insérer en maintenant enfoncée la touche Changement et en tapant une barre oblique inverse.
Pour définir le niveau du message d'erreur sur PHP 5.2, utilisez la ligne suivante :
rapport d'erreur = E_ALL

Après avoir modifié php.ini, enregistrez le fichier et redémarrez Apache ou IIS pour que les modifications prennent effet.
Si le serveur Web ne démarre pas, vérifiez les fichiers journaux comme décrit plus haut dans ce chapitre, et vous serez reconnaissant d'avoir suivi les conseils et sauvegardé le php.ini avant de le modifier. Recommencez avec une nouvelle copie de php.ini et vérifiez attentivement vos modifications.

Paramètres de langue

moteur = allumé

La directive permet(activé) ou interdit (désactivé) exécuter des scripts sur PHP sous le contrôle du serveur Apache.

short_open_tag = Activé

La directive permet(activé) ou interdit (désactivé) utiliser des balises courtes

La directive interdit(off) ou autorise (On) utiliser des balises avec style

ASP (<% %>).

Précision - 12

La directive définit le nombre de chiffres significatifs après la virgule pour les nombres à virgule flottante.

sortie_buffering = 4096

La directive permet la mise en mémoire tampon de sortie tout en spécifiant simultanément la taille du tampon de sortie en octets. Directive incluse(sortie_buffering = on) vous permet d'envoyer des en-têtes, y compris des cookies, après la sortie du texte. Si la taille du tampon n'est pas spécifiée, la taille maximale possible du tampon est utilisée.

implicit_flush = Désactivé

L'effet de cette directive est similaire à l'appel d'une fonction flush (fonction qui efface le tampon de sortie PHP) après chaque utilisation des fonctions imprimer ou faire écho et après chaque bloc HTML. L'utilisation de cette directive ralentit considérablement l'exécution du script, elle est donc désactivée par défaut et est recommandée uniquement à des fins de débogage.allow_call_time_pass_reference = Désactivé

Cette directive détermine s'il est possible de passer des arguments aux fonctions par référence lors de l'exécution d'un script. En PHP 5, il est désactivé par défaut. Cette directive étant activée par défaut dans les versions antérieures du langage, des problèmes peuvent survenir lors de l'exécution de ces scripts lors du passage à PHP 5 (des avertissements apparaîtront chaque fois qu'un argument est passé de manière inappropriée).

safe_mode = Désactivé

La directive désactive (off) ou active (on) le mode sans échec.

highlight.string = #DDOOOO highlight.comment = #FF8000 highlight.keyword = #007700 highlighl.bg = #FFFFFF highlight.default = iOuOOBB surligne. html = #000000

Un ensemble de directives définit les couleurs utilisées pour colorer la syntaxe PHP lors de l'appel de fonctions chaîne_surbrillance.

Limite de ressources

max_execution_time = 30

La directive précise que la durée maximale d'exécution du script est de 30 secondes.

max_input_time = 60

La directive spécifie le temps maximum que le script peut passer à traiter les données demandées.

limite_mémoire= 8 M

La directive précise que la quantité maximale de mémoire allouée à un script est de 8 Mo.

Gestion des erreurs et journalisation

rapport_erreur

directive de rapport d'erreurs est spécifié sous forme de champ de bits, c'est-à-dire que sa valeur est définie à l'aide des constantes suivantes combinées avec l'opérateur | ( ou ):

E tous (tous les avertissements et erreurs) ;

E_parse (erreurs de traduction) ;

E avis (notifications d'exécution qui indiquent d'éventuelles erreurs logiques dans le script ; ce type d'erreur inclut, par exemple, des avertissements concernant l'utilisation de variables non initialisées) ;

Erreur de base E (erreurs fatales au démarrage de PHP) ;

E avant avertissement (avertissements au démarrage de PHP);

E erreur de compilation (erreurs fatales lors de la compilation) ;

E_compile_warning (avertissements de compilation);

E_user_error (erreurs causées par les actions de l'utilisateur) ;

Marquage utilisateur E (alertes provoquées par les actions de l'utilisateur) ;

Ainsi, afin d'afficher toutes les erreurs, à l'exception des notes sur d'éventuelles erreurs logiques dans le script, vous devez définir la directive rapport_erreur comme suit:

error_reporting = ~E_ALL & ~E AVIS

Pour afficher uniquement les erreurs, la directive doit être configurée comme indiqué ci-dessous :

erreur__reporting = !E_COMPILE_ERRORIE_ERRORIE_CORE_ERROR
display_errors = Désactivé

La directive interdit l'affichage des erreurs et des avertissements dans le navigateur. Lors du débogage des applications, vous devez activer cette directive, b pour un vrai travail, il vaut mieux le désactiver (en PHP 5 il est désactivé par défaut), car lorsqu'il est activé erreurs d'affichage le visiteur peut accéder à des informations sensibles. Vous pouvez utiliser la journalisation au lieu de cette directive. display_startup__errors = Désactivé

La directive désactive (off) ou autorise (on) l'affichage des erreurs qui surviennent au démarrage de PHP.

log_errors = Désactivé

Cette directive désactive (off) ou autorise (on) l'enregistrement des messages d'erreur dans le fichier journal.

log__errors_max_len = 1024

La directive spécifie la longueur maximale du fichier journal.

erreurs de suivi = Désactivé

La directive désactive (off) ou active (on) le stockage du dernier message d'erreur dans la variable $php _erronr,sg

html_errors = Désactivé

La directive désactive (off) ou active (on) la sortie d'éventuels messages d'erreur en HTML.

error_log = nom de fichier

Cette directive vous permet de vous connecter au fichier nom de fichier.

Informatique

Directive track_vars toujours activé à partir de la version PHP 4.0.3.

variables_order - "EGPCS"

Cette directive définit l'ordre dans lequel les variables sont enregistrées obtenir, publier, cookie. Environnement et les variables du serveur (respectivement g, p, s, e et s). L'inscription se fait en lisant cette ligne de gauche à droite. Par défaut en PHP 5, la directive reçoit la valeur gpcs.

Si vous définissez la directive valeur GP variables_order, alors l'enregistrement des variables sera effectué uniquement pour les variables transmises par les méthodes poster et recevoir . Dans ce cas, toutes les variables transmises via les cookies, ainsi que les variables du serveur et les variables d'environnement, seront ignorées.

register_globals = Désactivé

Cette directive désactive (off) ou active (on) la possibilité d'enregistrement EGPC -variables comme variables globales. L'utilisation de variables globales peut créer des failles dans la sécurité des scripts, cette directive est donc désactivée par défaut.

enregistrer la directive globale est l'un des points les plus controversés du langage PHP. D'une part, son utilisation peut en effet donner lieu à de réels problèmes de protection des scripts PHP si d'éventuelles situations d'erreur ne sont pas correctement prises en compte, et de nombreux développeurs notent à juste titre qu'écrire des scripts sans utiliser de variables globales réduit la vulnérabilité des scripts à diverses types d'attaques de 90%. D'autre part, à l'aube de PHP, plus d'un millier d'utilisateurs faisaient confiance aux développeurs du langage (jusqu'à la version PHP 4.3, cette directive était activée par défaut), grâce à quoi il existe actuellement des millions de scripts fonctionnels écrits à l'aide de variables globales. (Il convient de noter qu'à des fins pédagogiques, il est parfois tout à fait intéressant d'écrire des scripts à l'aide de variables globales, car leur remplacement par des tableaux superglobaux nuira considérablement à la lisibilité du code.)

Tous les fournisseurs d'hébergement ont actuellement cette directive activée et le resteront probablement pendant longtemps, sinon la continuité du code pourrait être rompue. La plupart des exemples de ce livre sont écrits avec la directive spécifiée désactivée.

register_long_arrays = Désactivé

Directive autorisant(sur) ou interdire(désactivé) utiliser pour transmettre des variables à partir de formes de tableaux longs comme $http_get_vars, $http_post_varsetc. Si cette directive est désactivée, vous devez utiliser de nouveaux tableaux superglobaux de la forme $_ obtenir, $_post, etc.

La valeur par défaut (Off) de cette directive est très controversée, car il existe de réels problèmes de sécurité lorsque la directive est activée. registre_long_arrays ne devrait pas se produire. De nombreux développeurs, par habitude, préfèrent utiliser des tableaux superglobaux comme $ http_get_vars au lieu de $__get. Si Si la directive spécifiée est désactivée, bien entendu, ce code cesse de fonctionner.

post_max_size = 8M

La directive définit la taille maximale des données transférées par la méthode

poste.

magic_quotes_gpc = Désactivé

Cette directive permet de désactiver (off) ou d'activer (on) le traitement automatique des guillemets et apostrophes magiques dans les données obtenir, publier et cookie.

magic_quotes_runtime = Désactivé

La directive vous permet de désactiver(off) ou activer (on) possibilité d'exécuter des commandes entourées de guillemets magiques("quelque chose").

Chemins et répertoires

; UNIX : "/pathl:/path2" ;include_path = ".:/php/includes"

; Windows : "\pathl;\path2" ;includs_path = ".;c:\php\includes"

Chemins où se trouvent les scripts PHP.

racine_doc ; -

La directive définit le répertoire racine des scripts PHP,

extension_diг = "./"

La directive spécifie le répertoire dans lequel se trouvent les extensions chargées dynamiquement.

activer_dl = Activé

Une directive qui autorise (on) ou interdit (off) l'utilisation de la fonction dl.

fonction dl conçu pour charger des extensions PHP, par exemple, telles que SQLLite. Cette fonction ne fonctionne pas correctement sur les serveurs Web multithread (IIS, Zeus) et est automatiquement désactivée pour ceux-ci.

file_uploads = Activé

Une directive qui autorise (on) ou interdit (off) le téléchargement de fichiers sur le serveur.

upload_max_filesize = 2M

Directive qui définit la taille maximale des fichiers téléchargés.

Travailler avec des sockets

autoriser uilfcpen = activé

Une directive qui autorise (on) ou interdit (off) l'utilisation d'URL (http://, ftp://) comme fichiers.

La directive spécifiée doit être activée lorsque vous travaillez avec des sockets.

user_agent="PHP"

Directive fixant la valeur d'une variable agent_utilisateur fourni par le serveur lors de la connexion à l’aide d’un socket.

default_socket_timeout = 60

Une directive qui spécifie le temps d'écoute maximal du socket, en secondes.

Extensions dynamiques

Pour le chargement automatique de la directive d'extensions dynamiques extension doit être réglé comme suit :

e>:tension=nomdumodule.extensionPar exemple, pour Windows, vous pouvez écrire ceci :

extension = msql.dll

Et pour UNIX comme ceci :

extension=msql.so

Ici, seul le nom est spécifié, sans préciser le chemin. Si vous devez spécifier un chemin, vous devez utiliser la directive d'extension dir décrite ci-dessus.

Paramètres des modules Module Syslog

définir_sysiog_variables = Désactivé

Directive définissant s'il faut ou non utiliser diverses variables démon syslog tel que $ log fid, $log_cron, etc. pourpour accélérer le travail, il est recommandé de désactiver cette directive et, si nécessaire, d'utiliser la fonction défirie_syslog_variables.

module de fonction de messagerie

SMTP = hôte local

Cette directive est destinée à être utilisée uniquement dans un environnement Windows et spécifie le serveur SMTP à utiliser.

sendmail_from = admin@iocalhost

Cette directive est destinée à être utilisée uniquement dans les environnements Windows et définit le champ De par défaut.

sendmail__path = \usr\sbin\sendmail -t -i

Cette directive est utilisée uniquement dans l'environnement UNIX et spécifie le chemin et les arguments du démon envoyer un courrier.

Module débogueur

debugger.enabled = Activé debugger.profiler_enabled = Activé

Directives responsables de l'activation (on) ou de la désactivation (off) du débogueur et du profileur.

Module Java

java.class.path = .\php_java.jar java.home = c:\jdk

Java. bibliothèque = c: \jdk\jre\bir.\hotspot\jta,dll java.library.path = .\

Chemins et répertoires pour Java.

uodbc.allowj> persistant = activé

La directive autorise (active) ou refuse (désactive) les connexions ODBC persistantes.

uodbc.check_persistent - Activé

Cette directive active (on) ou désactive (off) la vérification de la disponibilité d'une connexion ODBC avant de l'utiliser.

uodbc,max_persistent = -1

Une directive qui définit le nombre maximum de connexions ODBC persistantes. Une valeur de -1 signifie qu’il n’y a aucune restriction.

uodbc. encres ixiax_l = -1

Une directive qui définit le nombre maximum de connexions ODBC persistantes et non persistantes. Une valeur de -1 signifie qu’il n’y a aucune restriction.

uodbc.defaultlri = 4096 Longueur pour les champs longs. uodbc.defaultbinmode = 1

Une directive qui définit les paramètres pour travailler avec des données binaires. La valeur o signifie mode passthru, 1 - mode tel quel, 2 - mode de conversion en symboles.

Module MySQL

mysql.allow_persistent = Activé

La directive autorise (active) ou refuse (désactive) les connexions MySQL persistantes.

mysql,max_persistent - -1

Une directive qui définit le nombre maximum de connexions MySQL persistantes. La valeur -i signifie qu'il n'y a aucune restriction.

liens rr.ysql.max = -1

Une directive qui définit le nombre maximum de connexions MySQL persistantes et non persistantes. Une valeur de -1 signifie qu’il n’y a aucune restriction.

mysql.default_port =

Directive définissant le port par défaut de la fonction

mysql_connect. Si la valeur n'est pas spécifiée, la fonction mysql..connecter utilise la variable $ mysql_tcp_pqrt ou entrée mysqi -tcp dans le répertoire /etc/services, suivi d'une constante de compilation port_mysql (dans cet ordre).

Lorsque vous travaillez dans un environnement Windows, seule une constante est utilisée port mysql. mysql.default_socket =

Directive définissant le nom du socket pour les connexions MySQL locales. Si elle n'est pas spécifiée, la valeur par défaut est utilisée.

mysql.default_host =

Directive spécifiant le nom d'hôte par défaut pour la fonction

mysql_connect(). mysql.default_user =

Directive qui spécifie le nom d'utilisateur de la base de données par défaut. Cette valeur est utilisée lors de l'établissement d'une connexion au serveur de base de données si le nom d'utilisateur n'est pas passé en argument à la fonction

mysql_connect(). mysql.default_password =

Une directive qui spécifie le mot de passe utilisateur de base de données par défaut. Cette valeur est utilisée lors de l'établissement d'une connexion au serveur de base de données si le nom d'utilisateur n'est pas passé en argument à la fonction

Cela ne vaut guère la peine de stocker le mot de passe dans le fichier de paramètres PHP, car tout utilisateur ayant le droit d'exécuter PHP peut trouver le mot de passe en exécutant un script. echo cfg_get_var("mysql .def ault_passwcrd").

En mode sans échec, les trois dernières directives ne fonctionnent pas.

module bcmath

bcmath.scale = O

Directive définissant le nombre de chiffres décimaux pour tous bcmath -fonctions (fonctions mathématiques de précision arbitraire).

Module de séance

session. save_handler = fichiers

Une directive qui détermine comment stocker les données de session (par défaut - dans des fichiers).

session. s«*>s_path - ftinp

Si la directive précédente spécifie le mode de stockage des données dans les fichiers, alors cette directive spécifie le répertoire dans lequel sont placés les fichiers de session.

session.use__cookies = 1

Une directive qui détermine si les Cookies peuvent être utilisés (par défaut, les Cookies sont autorisés).

session.nom = PHPSESSTD

Une directive qui spécifie le nom de session par défaut.

session.auto_scart = O

Une directive qui autorise ou interdit l'initiation de session au démarrage (désactivée par défaut).

session.cockie_lifetime = Oh

Définit la durée de vie du cookie par défaut. Si la directive prend la valeur 0, alors la durée de vie du Cookie dure jusqu'à la fermeture du navigateur.

session.cookie_path = /

Une directive qui spécifie le chemin où les identifiants de cookies sont stockés.

session. cookie_dornain -

Spécifie le domaine du Cookie (paramètre par défaut de la fonction

setcookie).

session.seriaiise_handler = php

Fonction utilisée pour sérialiser les données. La valeur php spécifie une fonction standard.

session.gc_prpbability ~i

Directive qui détermine la probabilité que la prochaine fois qu'un script fonctionnant avec des sessions sera exécuté, la fonction de garbage collection sera appelée pour nettoyer les sessions qui ne sont plus utilisées par l'utilisateur.

session.cache_limiter = nocache

Une directive qui spécifie l'une des valeurs de mise en cache HTTP. Peut prendre les valeurs suivantes : nocache, privé, public.

La signification de ces directives est discutée plus en détail dans chapitre 3.

session.cache_expire = ISO

Une directive qui précise le nombre de minutes après lequel un document sera considéré comme obsolète. Passé ce délai, le document ne peut plus être utilisé pour la mise en cache et doit être à nouveau téléchargé depuis la source.

session.use_trans sid = 1

Une directive qui détermine si la prise en charge des SID dits glissants (identifiants de session) doit être utilisée. En d’autres termes, est-il nécessaire de maintenir des sessions si l’utilisateur a désactivé les Cookies dans le navigateur ?

Cette directive ne fonctionne que si RNR a été compilé avec l'option activée--enable-trans-side.

session.hash_?unction = O

Directive définissant le choix des fonctions de hachage pour les sessions. Une valeur de 0 correspond à une fonction md5, valeur I - fonction sha-je.

Module d'assertion

assert.active = Activé

Directive qui détermine si la fonction de vérification fonctionne affirme oh, découvrir si certaines affirmations sont fausses.

assert.warning = Activé

Une directive qui détermine si des avertissements doivent être générés pour chaque test d'expression qui échoue par la fonction affirmer. assert.bail = Désactivé

Une directive qui détermine si le programme doit se terminer (le) ou non(désactivé) en cas d'exécution infructueuse de la fonctionaffirmer(). assert.callback = O

Une directive définissant une fonction définie par l'utilisateur qui sera appelée lorsqu'un test échoue avec la fonction assert o. Par défaut, la valeur est zéro, c'est-à-dire que les fonctions utilisateur ne sont pas appliquées.

Module Verisign Payflow Pro (paramètres du serveur proxy)

pfpro.defaulthost = "test.signio.com"

Une directive qui spécifie l'URL du serveur proxy.

pfpro.defaultport = 443

La directive spécifie le port par défaut du serveur proxy.

pfpro.defaulttimeout = 30

La directive spécifie un délai d'attente pour le serveur proxy.

pfpro.adresseproxy =

Adresse IP du serveur proxy par défaut.

pfpro.proxyport =

Port proxy par défaut.

pfpro.proxylogon =

Connectez-vous au serveur proxy.

pfpro.proxypassword n

Mot de passe du serveur proxy. Module de prises

sockets.use_system_read - Activé

Directive autorisant l'utilisation d'une fonction lire lorsque vous travaillez avec des prises.

Bien sûr, je ne suis pas un super expert dans toutes sortes de choses liées à la configuration de serveurs Web, Apache, PHP et tout le reste, donc je n'ai toujours pas de serveur séparé pour les projets. Cependant, parfois, au travail, vous rencontrez des situations où vous devez encore vous plonger dans les détails et les nuances des paramètres - aujourd'hui, il y aura un article sur l'un d'entre eux. Le contexte est assez trivial : je développais un site Web sur typo3 et là, vous devez installer ImageMagick pour travailler avec des images. Alors je contacte l’hébergeur, ils l’ont installé, mais pour une raison quelconque, ça ne marche toujours pas. Ensuite, je trouve la fonction d'exécution interdite, qui est exactement ce dont ImageMagick a besoin pour fonctionner - je contacte à nouveau l'hébergeur. Et puis il y a la procédure de communication compliquée, où j'écris d'abord une lettre dans le panneau d'administration de l'hébergeur, ils y répondent par e-mail au client, et alors seulement je peux lire le message :)

En général, j'ai souffert pendant 3 voire 4 jours, après quoi j'ai été dirigé vers la page d'aide nécessaire, où j'ai trouvé toutes les informations nécessaires. Il s'est avéré que j'ai pu spécifier mes paramètres PHP d'hébergement via le fichier php.ini, ce qui, en principe, était un peu inhabituel.

Donc, php.ini est un fichier de paramètres et de configuration PHP. Il contient un certain nombre de directives qui définissent différents comportements de PHP et, par conséquent, du site. Le nom du fichier doit être exactement celui que l'interprète peut trouver. Sur Internet, ils écrivent qu'il recherche d'abord le fichier de paramètres php.ini dans le répertoire courant, s'il n'y est pas, puis il va dans le répertoire spécifié dans la variable d'environnement PHPRC, et enfin ils vérifieront let, qui a été défini lors de la compilation de PHP. D'une certaine manière, l'information est intéressante, mais plus théorique :)

Revenons à des exemples réels. Lorsque je travaille avec différents hébergeurs, on peut dire que j'avais plusieurs options et nuances pour configurer PHP.

1. Si cPanel est utilisé comme panneau d'administration, alors nous y trouvons rubrique "Configuration PHP"", où une liste de paramètres PHP pour l'hébergement est publiée. Parfois, vous pouvez y changer la version de PHP si le serveur vous permet de travailler avec les versions 4 et 5.

Il est possible que cPanel propose des options pour modifier les paramètres PHP (sauf la version), mais je ne l'ai pas encore rencontré. Par conséquent, j’ai le plus souvent eu recours à la deuxième option.

2. Assez logique pour un utilisateur peu versé dans tout ça demandez de l'aide à votre hôte. Parfois, c'est la seule solution possible. Ici, apparemment, beaucoup dépend de la configuration et des principes de fonctionnement du service pour différentes entreprises - certaines donnent plus de liberté aux utilisateurs, d'autres, au contraire, tentent de contrôler tous les paramètres.

3. Certains hébergeurs font tellement confiance à leurs clients qu'ils autorisent utilisez vos paramètres dans php.ini sur les serveurs. Si je comprends bien, un certain nombre de paramètres PHP sont installés par défaut, mais dans certains endroits, des situations surviennent lorsque certains systèmes ou scripts peuvent nécessiter des fonctionnalités supplémentaires - comme, par exemple, dans mon cas avec la fonction exec ou lorsqu'il s'agit de Wordpress, vous pouvez vous souvenir de la variable memory_limit.

Sur l'un des hébergeurs avec lesquels je travaille, J'ai trouvé des instructions sur la façon dont vous pouvez toujours remplacer certains paramètres php.ini pour répondre à vos besoins.:

Dans .htaccess ajoutez les lignes suivantes :

#!/bin/sh exec /usr/bin/php -c /home/support/php.ini

Ici, /home/support/php.ini est le chemin d'accès à votre php.ini (bien sûr, le fichier php.ini lui-même devra y être créé, assurez-vous que le chemin est correct). Après cela, attribuez les autorisations sur le fichier php5.fcgi à 755 (chmod 755 php5.fcgi). Les paramètres PHP seront désormais traités en tenant compte de votre fichier php.ini.

Il y a 2 précisions à cette instruction. Lors de la création du fichier php5.fcgi, vous devez utiliser des sauts de ligne Unix, c'est-à-dire n. Et si une erreur 500 se produit, consultez le fichier journal des erreurs, où vous trouverez très probablement quel est le problème.

D'ailleurs, l'un des utilisateurs a ajouté un commentaire à cet algorithme - et très utile ! Vous pouvez tout organiser un peu plus facilement. Le tout dans le même fichier .htaccess, ajoutez le chemin de votre php.ini via un paramètre spécial :

Nous l'enregistrons et le copions sur l'hébergement FTP dans le répertoire racine du site, puis le lançons. Tous les paramètres PHP doivent être affichés à l'écran, où vous pouvez trouver la signification de certaines fonctions à corriger dans le php.ini. Si vous avez quelque chose à ajouter, écrivez dans les commentaires.

P.S. Garde. Optimisation, promotion et promotion du site dans les moteurs de recherche Google, Yandex.
Si vous avez besoin d'un développement de site Web de haute qualité, vous pouvez contacter un studio LTD.



Des questions ?

Signaler une faute de frappe

Texte qui sera envoyé à nos rédacteurs :