Comment configurer les fichiers php.ini par site sur un serveur LAMP à l'aide de NameVirtualHosts?

J'ai un serveur LAMP desservant un certain nombre de sites Web différents en utilisant NameVirtualHosts .

Jusqu'à récemment, un fichier php.ini mondial était tout simplement correct, mais récemment un de nos développeurs a demandé quelques paramètres dans php.ini que je préfère ne pas définir globalement.

Je suis sûr d'avoir appris que vous pouvez configurer des fichiers php.ini par site , mais ne savez pas comment procéder.

Quelqu'un peut-il me dire dans la bonne direction comment faire cela?

4 Solutions collect form web for “Comment configurer les fichiers php.ini par site sur un serveur LAMP à l'aide de NameVirtualHosts?”

La plupart des paramètres que vous placeriez dans votre php.ini peuvent également être placés dans un .htaccess ou dans la configuration apache pour ce site. Par exemple, l'un de mes hôtes virtuels a ceci dans le .htaccess

php_value display_errors 1 php_value register_globals 0 php_value short_open_tag 0 php_value magic_quotes_runtime 0 php_value magic_quotes_gpc 0 php_value session.name "PHPSESSID_SITEBLAH" php_value session.gc_maxlifetime 57600 php_value session.gc_probability 1 php_value session.gc_divisor 500 

Vous pouvez également spécifier les paramètres de configuration dans le fichier de configuration Apache (httpd.conf / apache.conf). Dans votre cas, vous pouvez spécifier les valeurs de configuration dans le contexte.

L'exemple suivant devrait configurer upload_max_filesize sur 10M pour l'hôte virtuel example.com.

 <VirtualHost *> ServerName example.com DocumentRoot /path_to_docroot php_value upload_max_filesize 10M php_admin_flag allow_url_fopen on </VirtualHost> 

Si vous ne souhaitez pas définir cette valeur pour l'ensemble du site, mais dans un répertoire particulier où réside l'application, vous pouvez spécifier les valeurs dans un.

 <VirtualHost *> ServerName example.com DocumentRoot /path_to_docroot <Location /testApp/> php_value upload_max_filesize 10M php_admin_flag allow_url_fopen on </Location> </VirtualHost> 

Voir http://php.net/manual/en/configuration.changes.php pour plus d'explications.

Une autre suggestion consiste à utiliser mod-fastcgi ou mod-fcgi, qui exécute PHP comme un démon autonome séparé. Ensuite, pour chaque site Web, vous pouvez définir un fichier de configuration utilisateur et php.ini distinct.

Une autre option est suPHP qui vous permet de définir un php.ini pour chaque VirtualHost. Il vous permet également de spécifier une version PHP pour chaque VirtualHost.

  • Comment puis-je installer PHP 5.3 sur CentOS?
  • exécutez le script php en arrière-plan
  • erreur de la database mediawiki lors de la transmission de certains files PDF
  • Activer php pdo sur cpanel
  • Le script PHP ne fonctionnera pas - Les servers Apache2 / MySQL fonctionnent, PHP installé - Ubuntu 10.04
  • Problèmes de memory partagés APC
  • Comment puis-je download des files dans le dossier httpd (www) dans EC2?
  • Espace disque insuffisant; essayez plus tard lorsque vous essayez d'envoyer un courrier
  • Libération automatique de la memory PHP après un certain time
  • Comment conservez-vous la configuration du serveur existant lors de la migration de différents serveurs de serveurs dédiés?
  • Debian apache2 n'effectue pas de scripts php, mais il montre la source
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.