[[hebergement-mutualise:gestion-web:choisir-version-php-et-php-ini]]

Choisir la version de PHP et personnaliser son fichier php.ini

Sur vos espaces d'hébergements, vous pouvez choisir la version de PHP que vous souhaitez utiliser et également mettre en place un fichier php.ini personnalisé permettant de modifier la configuration de PHP pour une de vos applications.

Méthode non recommandée

Attention ! La méthode indiquée sur cette page n'est pas la méthode recommandée, si possible il faut utiliser l'outil visible dans la partie logiciel de cPanel : Sélectionner une version de PHP

Cette méthode fonctionne toujours, elle présente l'avantage de pouvoir sélectionner la version de PHP et personnaliser le php.ini pour un dossier spécifique de l'hébergement cependant l'implémentation PHP étant différente, ça sera légèrement plus lent que les configurations effectuées avec l'outil Sélectionner une version de PHP

Vous pouvez choisir la version de PHP en mettant en place un fichier .htaccess dans le dossier ou vous souhaitez que cette version de PHP soit exécuté. Dans ce fichier .htaccess, vous pouvez précisez l'une de ces lignes :

#PHP 5.2 : 
<FilesMatch \.php$>
SetHandler application/x-httpd-php52
</FilesMatch>
AddHandler application/x-httpd-php52 .php

#PHP 5.3 : 
<FilesMatch \.php$>
SetHandler application/x-httpd-php53
</FilesMatch>
AddHandler application/x-httpd-php53 .php

#PHP 5.4 : 
<FilesMatch \.php$>
SetHandler application/x-httpd-php54
</FilesMatch>
AddHandler application/x-httpd-php54 .php

#PHP 5.5 : 
<FilesMatch \.php$>
SetHandler application/x-httpd-php55
</FilesMatch>
AddHandler application/x-httpd-php55 .php

#PHP 5.6 : 
<FilesMatch \.php$>
SetHandler application/x-httpd-php56
</FilesMatch>
AddHandler application/x-httpd-php56 .php

#PHP 7.0 : 
<FilesMatch \.php$>
SetHandler application/x-httpd-php70
</FilesMatch>
AddHandler application/x-httpd-php70 .php


#PHP 7.1 : 
<FilesMatch \.php$>
SetHandler application/x-httpd-php71
</FilesMatch>
AddHandler application/x-httpd-php71 .php

La version de PHP voulu sera prise en compte pour le dossier contenant le fichier .htaccess ainsi que l'ensemble des sous-dossiers. Cela vous permet d'avoir des configurations assez fines, comme par exemple définir une versions de PHP différente pour chacun de vos sites : il suffit de préciser un fichier .htaccess avec la bonne directive à la racine de vos sites.

Par exemple :

  • public_html/.htaccess avec :

<FilesMatch \.php$>
SetHandler application/x-httpd-php52
</FilesMatch>
AddHandler application/x-httpd-php52 .php

permet de dire que l'ensemble de public_html et ces sous-dossiers fonctionneront avec php 5.2

  • public_html/site-recent.fr/.htaccess avec

<FilesMatch \.php$>
SetHandler application/x-httpd-php54
</FilesMatch>
AddHandler application/x-httpd-php54 .php

permet d'avoir le dossier “site-recent.fr” ainsi que les sous-dossiers avec php 5.4. Le .htaccess de “dernier niveau” est pris en compte, donc le .htaccess précédent de “public_html” est ignoré dans ce cas puisque redéfini dans un dossier plus profond.

  • sites/.htaccess avec rien de particulier à l'intérieur : utilise la version par défaut de PHP sur le serveur, c'est-à-dire PHP 5.4

Pour mettre en place un fichier php.ini, vous devez forcer la version de PHP que vous souhaitez utiliser (par défaut, php 5.4) à l'aide des explications fourni plus haut, puis ajoutez cette directive dans le fichier .htaccess contenu dans le dossier ou vous souhaitez que les modifications soit effective :

suPHP_ConfigPath /chemin_vers_dossier_contenant_php.ini

Par exemple, si vous souhaitez mettre en place un fichier php.ini en utilisant la version par défaut de PHP pour votre site principal contenu dans “public_html”, vous devrez créer un fichier .htaccess dans le dossier public_html avec ces directives :


<FilesMatch \.php$>
SetHandler application/x-httpd-php54
</FilesMatch>
AddHandler application/x-httpd-php54 .php
suPHP_ConfigPath /home/votre_login/public_html

Dans ce dernier cas, le fichier php.ini devra être situé ici : /home/votre_login/public_html/php.ini

La version de PHP ainsi que les modifications ajoutés via le fichier php.ini seront effectives pour le dossier public_html ET l'ensemble des sous-dossiers de “public_html” SAUF si un fichier .htaccess ré-écrit cela avec de nouvelles directives.

Si vous avez un deuxième site contenu dans le dossier “public_html” qui requiert des configurations particulières, vous pouvez ré-écrire cela en mettant en place un nouveau fichier .htaccess à la racine du deuxième site cette fois :

Dans /home/votre_login/public_html/site2.fr/.htaccess

<FilesMatch \.php$>
SetHandler application/x-httpd-php53
</FilesMatch>
AddHandler application/x-httpd-php53 .php
suPHP_ConfigPath /home/votre_login/public_html/site2.fr

Le fichier php.ini devra être ici : /home/votre_login/public_html/site2.fr/php.ini

Fichiers d'exemple php.ini, par version. Ces fichiers ne constituent pas une copie des réglages présents par défaut sur les serveurs. Vous pouvez les modifier, ajuster (…)
  • Dernière modification: 27/02/2019 19:03
  • par o2switch