Base de connaissances
1 000 FAQ, 500 tutoriels et vidéos explicatives. Ici, il n'y a que des solutions !
Ce guide explique comment configurer les paramètres PHP des hébergements Web directement en ligne de commande lorsque vous exécutez des scripts PHP en utilisant PHP CLI (Interface de Ligne de Commande).
Préambule
- Ce type de paramétrage peut être utile lorsque vous devez modifier temporairement certains paramètres pour un script spécifique ou pour une session PHP.
- Ces modifications ne seront valables que pour l'exécution du script en cours et ne modifieront pas la configuration PHP globale.
Modifier les paramètres PHP CLI
Pour par exemple modifier temporairement les paramètres pour un script spécifique sans avoir à modifier la configuration PHP globale du serveur, suivez la méthode ci-dessous ; avec l'environnement PHP CLI vous pouvez spécifier plusieurs paramètres PHP en même temps en les séparant par des espaces.
Utiliser le paramètre -d
Lorsque vous exécutez PHP en ligne de commande, vous pouvez utiliser le paramètre -d pour spécifier des configurations PHP. Cela vous permet de modifier les paramètres PHP pour cette exécution spécifique. Par exemple, pour définir le temps maximal d'exécution à 90 secondes, la limite de mémoire à 256 Mo et désactiver le mode sécurisé, vous pouvez le faire comme suit:
php -d max_execution_time=90 -d memory_limit=256M -d safe_mode=Off -f test.phpLien vers cette FAQ:
Cette FAQ a été utile?
Ce guide explique comment modifier la version de PHP utilisée en ligne de commande (PHP CLI) sur un hébergement Web Infomaniak.
Préambule
- Utile pour configurer un script spécifique ou une session PHP en ligne de commande (CLI).
- Pour modifier la version PHP du serveur Web (FPM/Apache) via le Manager, prenez connaissance de cet autre guide.
Version par défaut de PHP CLI
La commande php utilise la version par défaut du serveur. Vérifiez la version active avec cette commande :
# Check current PHP version
php -vPour la stabilité de vos scripts, utilisez un chemin explicite (ex: php8.2) ou modifiez votre variable PATH.
Modifier la version de PHP en CLI
Vous pouvez configurer la version de PHP chargée automatiquement dans votre session SSH via deux fichiers principaux.
1. Utilisation de .bashrc (Recommandé)
Le fichier ~/.bashrc est lu lors de l'ouverture d'un shell interactif.
Ouvrez le fichier (ou créez-le s'il n'existe pas) :
touch ~/.bashrc nano ~/.bashrcAjoutez cette ligne pour définir la version souhaitée (exemple avec PHP 8.3) :
export PATH="/opt/php8.3/bin:$PATH"Actualisez la configuration :
source ~/.bashrcVérifiez le changement :
php -v which php
2. Utilisation de .profile (Alternative)
Le fichier ~/.profile est lu lors d'une connexion SSH (mode login).
Modifiez le fichier :
nano ~/.profileAjoutez la ligne d'exportation :
export PATH="/opt/php8.3/bin:$PATH"
3. Charger .bashrc systématiquement
Pour appliquer la configuration Ă tous les types de sessions, ajoutez ce code dans vos fichiers ~/.bash_profile ou ~/.profile :
# Load .bashrc if it exists
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
Exécuter une version précise ponctuellement
Pour lancer un script avec une version spécifique sans changer votre environnement global, appelez directement le binaire :
# Execute with a specific version
/opt/php8.2/bin/php my_script.php
/opt/php8.3/bin/php -vUne fois ces étapes terminées, vos sessions SSH et vos scripts CLI utiliseront la version de PHP sélectionnée par défaut.
Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide explique comment utiliser les variables d'environnement PHP avec les Hébergements Web qui fonctionnent en php-fpm.
Préambule
- Les variables d'environnement PHP sont des variables système utilisées pour stocker des informations sur les requêtes HTTP et les redirections.
- Elles sont généralement utilisées dans les serveurs Web pour stocker des détails sur les requêtes précédentes ou sur les redirections qui ont été effectuées.
- Ces variables peuvent contenir des informations telles que les URLs précédentes, les méthodes HTTP, ou d'autres données liées à la navigation du client sur le serveur Web.
Utiliser les variables d'environnement
Pour utiliser les variables d'environnement PHP:
- Définissez les variables d'environnement PHP dans un fichier
.htaccess:SetEnv EXAMPLEVARIABLE hello
- Dans votre fichier PHP, le nom de la variable à appeler correspond au même nom de variable défini dans la variable d'environnement:
<?php getenv('EXAMPLEVARIABLE');
Dans cet exemple, le résultat affiché sera hello.
Aller plus loin avec les variables d'environnement
Il est possible de configurer des variables d'environnement directement depuis le Manager pour l'ensemble de votre site Web:
- Cliquez ici afin d'accéder à la gestion de votre site sur le Manager Infomaniak (besoin d'aide ?).
- Cliquez directement sur le nom attribué au site concerné:

- Cliquez sur Gérer les paramètres avancés:

- Cliquez sur l'onglet PHP / Apache:

- Plus bas sur la page, cliquez sur le chevron ‍ pour développer la partie Variables d'environnement.
- Cliquez sur l'icône ‍ Ajouter.
- Entrez la variable et sa valeur.
- Cliquez sur le bouton pour sauvegarder:

Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide explique comment utiliser GnuPG / PGP avec PHP sur un Serveur Cloud Infomaniak, suite à l'obsolescence de l'extension native (des alternatives "PHP pur" ou des wrappers modernes sont privilégiés).
Préambule
- L'extension système
PHP_GnuPGn'est plus maintenue par la communauté PHP et n'est donc plus disponible sur les environnements récents. - Deux alternatives principales en "Pure PHP" (installables via Composer) permettent de continuer à signer ou chiffrer vos données en toute sécurité.
Option 1 : Crypt_GPG (Recommandé)
Cette bibliothèque agit comme un wrapper : elle communique directement avec le binaire gpg installé sur votre Serveur Cloud. C'est la solution la plus performante et la plus stable.
Pour l'installer, connectez-vous en SSH et exécutez cette commande à la racine de votre projet :
# Install the PEAR Crypt_GPG package via Composer
composer require pear/crypt_gpgExemple d'utilisation pour chiffrer un message (approche orientée objet) :
<?php
require_once 'vendor/autoload.php';
try {
// Initialize the GPG object
$gpg = new Crypt_GPG();
// Set the recipient email (must match a public key already imported on the server)
$gpg->addEncryptKey('contact@example.com');
$message = "This is a secret message.";
// Encrypt the data
$enveloppe = $gpg->encrypt($message);
echo $enveloppe;
} catch (Exception $e) {
// Handle potential encryption errors
echo "Error: " . $e->getMessage();
}
Option 2 : OpenPGP.php (Indépendant)
Cette bibliothèque est intégralement écrite en PHP. Son avantage majeur est qu'elle ne dépend pas du binaire gpg du serveur, garantissant une portabilité totale de votre code entre différents environnements.
# Install the OpenPGP.php library
composer require singpolyma/openpgp-phpExemple de structure de base :
<?php
require_once 'vendor/autoload.php';
// Use the library classes to handle OpenPGP packets
// directly in PHP without system calls to the GPG binary.
// Example: $msg = OpenPGP_Message::parse(OpenPGP::unarmor($data));Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide concerne les fonctions ODBC de PHP.
Les fonctions ODBC de PHP ne sont supportées que sur Serveur Cloud.
Fonctions Open Database Connectivity
Il s'agit des fonctions utilisées pour interagir avec des bases de données via l'interface ODBC (Open Database Connectivity), un standard pour accéder à des sources de données de manière uniforme. Voici quelques exemples d'utilisation des fonctions ODBC de PHP :
- Pouvoir lire des données d'une base de données externe, et les afficher sur votre site Web
- Insérer ou modifier des données dans une base de données externe
- Effectuer des requêtes complexes sur une base de données externe
Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide explique comment travailler sans le module PECL SSH2 client indisponible sur les hébergements Web et Serveurs Cloud Infomaniak, en utilisant plutôt la bibliothèque phpseclib, qui fonctionne en PHP natif sans nécessiter d’extension spécifique.
Préambule
- L’utilisation de
PECL SSH2 cliententraine des erreurs de typeNo compatible key exchange algorithms foundouUnable to exchange encryption keysdans sa derniere version disponible. Phpseclibpermet :- L'authentification SSH par mot de passe ou clé privée.
- L'exécution de commandes à distance.
- Le transfert de fichiers sécurisés (SFTP).
- La gestion des clés SSH.
Utiliser phpseclib
Pour intégrer une connexion SSH dans un script PHP, utilisez phpseclib comme suit :
use phpseclib3\Net\SSH2;
use phpseclib3\Crypt\PublicKeyLoader;
$ssh = new SSH2('domain.xyz');
$key = PublicKeyLoader::load(file_get_contents('/path/to/private_key'));
if (!$ssh->login('utilisateur', $key)) {
exit('Authentication Failed');
}
echo $ssh->exec('ls -la');Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide explique pourquoi il est dangereux d'utiliser une version de PHP qui n'est plus officiellement tenue à jour et comment utiliser une version de PHP plus récente avec un site Web hébergé par Infomaniak.
Une version obsolète de PHP est-elle dangereuse?
Lorsque vous utilisez une version de PHP (bientôt) vulnérable sur un ou plusieurs de vos sites, un message d'avertissement s'affiche dans le tableau de bord des hébergements concernés.
Le langage PHP évolue régulièrement et lorsque vous utilisez une version de PHP qui n'est plus tenue à jour, vous exposez votre site Web à des risques de sécurité. Des personnes malveillantes pourraient par exemple exploiter des failles de sécurité connues pour s'introduire sur votre site et en modifier le contenu. Il est donc vivement recommandé de toujours utiliser une version récente de PHP.
3 situations sont possibles:
- la version de PHP est pleinement supportée‍: aucune action n'est requise
- la version de PHP reçoit uniquement des mises à jour de sécurité‍: il est recommandé d'utiliser une version plus récente de PHP
- la version de PHP n'est plus tenue à jour‍: il est vivement recommandé d'utiliser une version plus récente de PHP
Utiliser une version plus récente
Les dernières versions de PHP sont plus performantes et accélèrent le chargement des sites Web.
Avant d'utiliser une version plus récente de PHP, il est important de suivre les précautions suivantes :
- Si votre site utilise un CMS ou une application Web (WordPress, Joomla, Drupal, etc.), assurez-vous que la version actuelle du CMS est prise en charge par la version de PHP que vous souhaitez utiliser.
- Si votre site a été développé manuellement, prenez connaissance de la documentation officielle de PHP pour vous informer sur les fonctions modifiées et les éventuels changements susceptibles d’affecter le fonctionnement de votre code.
En cas de dysfonctionnement après la migration vers une version plus récente de PHP, il est parfois possible de revenir à une version précédente, à condition que celle-ci soit encore supportée!
Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide explique comment modifier la version PHP disponible pour les sites de votre Hébergement Web Infomaniak.
Préambule
- Il est possible de passer d'une version PHP ancienne et potentiellement vulnérable à une version récente, mais revenir ensuite vers cette version vulnérable ne vous sera plus possible pour des raisons de sécurité.
- Le changement est effectif immédiatement et à l'infini.
- Prenez connaissance de cet autre guide si vous recherchez des informations au sujet de la configuration de la version de PHP utilisée en SSH.
- Il est peut-être nécessaire de mettre à jour votre hébergement au préalable pour accéder aux toutes dernières versions de PHP proposées par Infomaniak.
Modifier la version de PHP utilisée pour un site Web
Il est possible de facilement modifier la version de PHP utilisée sur l'ensemble d'un site Web:
- Cliquez ici afin d'accéder à la gestion de votre site sur le Manager Infomaniak (besoin d'aide ?).
- Cliquez directement sur le nom attribué au site concerné.
- Cliquez sur ‍ Plus d'informations.
- Cliquez sur Modifier:

- Choisissez la version de PHP désirée.
- Cliquez sur Enregistrer en bas de page pour sauvegarder la modification:

Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide explique comment activer sur un hébergement Web Infomaniak le support de certains types de fichier (.inc par exemple) par PHP afin qu'ils soient traités de la même façon qu'un fichier .php.
Préambule
- Auparavant, il fallait auparavant ajouter la ligne suivante dans un fichier
.htaccess:AddType application/x-httpd-php .inc- Cela évitait que lors d'un accès via navigateur, le contenu du fichier soit affiché en texte au lieu d'être interprété correctement par PHP.
- Désormais vous pouvez gérer les extensions de fichiers via le champ FPM Extensions dans le Manager de votre hébergement.
Gérer les extensions reconnues par PHP
Pour ajouter le support d'un type de fichier précis:
- Cliquez ici afin d'accéder à la gestion de votre site sur le Manager Infomaniak (besoin d'aide ?).
- Cliquez directement sur le nom attribué au site concerné:

- Cliquez sur Gérer les paramètres avancés:

- Cliquez sur l'onglet PHP / Apache:

- Editez le champ FPM Extensions vous permettant l'ajout désiré.
- Cliquez sur le bouton en bas de page pour sauvegarder:

Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide indique comment modifier la directive error_reporting() sur votre site Web.
Activer le rapport d'erreurs
Indiquez les 2 informations suivantes dans votre fichier .user.ini :
display_errors=on
error_reporting=E_ALL & ~E_NOTICE & ~E_STRICTSi votre navigateur n'affiche ni erreur ni avertissement c'est qu'il n'y en a pas.
Désactiver l'affichage d'erreurs PHP
Pour WordPress, éditez le fichier wp-config.php et remplacez la ligne:
define('WP_DEBUG', false);par :
ini_set('display_errors','Off');
ini_set('error_reporting', E_ALL );
define('WP_DEBUG', false);
define('WP_DEBUG_DISPLAY', false);Sinon, vous pouvez ajouter le code suivant dans le fichier .user.ini :
display_errors=offLien vers cette FAQ:
Cette FAQ a été utile?
Ce guide explique comment installer rapidement des applications, extensions PHP et technologies (liste non exhaustive ci-dessous) en quelques clics sur Serveur Cloud uniquement.
Prenez connaissance de cet autre guide si vous recherchez des informations au sujet d'Applications Web supplémentaires pouvant être installées sur tout type d'hébergement y compris offre standard/mutualisé.
Installer (ou désinstaller) des apps / extensions PHP…
Pour trouver la liste des technologies et procéder à leur installation:
- Cliquez ici afin d'accéder à la gestion de votre Serveur Cloud sur le Manager Infomaniak (besoin d'aide ?).
- Cliquez directement sur le nom attribué au Serveur Cloud concerné:

- Cliquez dans le menu latéral gauche:
- Extensions PHP

- Fast Installer

- Extensions PHP
- Cliquez sur le menu d'action ⋮ à droite de l'extension que vous souhaitez désinstaller dans le tableau qui s'affiche.
- Cliquez sur Désinstaller.
- Sinon cliquez sur le bouton bleu Installer une extension / Installer une application:

- Puis faites votre choix de nouvelle installation‍:

Liste non exhaustive des apps & extensions disponibles
AdvanceCOMPBuildEssentialelectron_devExifToolFFmpeg↗ guideGhostscriptGifsicleGraphicsMagickHAProxyImagemagick↗ guideJpegoptimlibjpeg_turbolibqrencodelibX11_xcb1MidnightCommanderMemcached↗ guidemongoDB↗ guideNVM Node Version ManagerOptiPNGp7zipPDFtkPHP_APCuPHP_CLI↗ guidePHP_FPM(extension obsolète) ↗ guide pour l'alternative PHP purePHP_GnuPGPHP_gRPCPHP_igbinaryPHP_IonCube↗ guidePHP_OPcachePHP_PDFPHP_PDO_ODBC↗ guidePHP_SwoolepipPngcrushPngquantRedis↗ guideRRDTool The Round Robin Database ToolRubyCompasssystemd↗ guidetesseract_ocrvarnish↗ guidevirtualenvWebPxauthxpdfxvfbZSH
Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide explique comment activer les fonctions suivantes sur Hébergement Web (en italique, Serveur Cloud uniquement):
proc_openpopenexec()shell_exec()set_time_limitpassthrusystem
Ces fonctions sont désactivées par défaut car elles représentent un risque de sécurité important en cas de piratage d'un site Web. Ne les activez qu'en cas de réel besoin (d'un script ou CMS ImageMagick, Typo3, CraftCMS, etc.).
Activer des fonctions PHP
Pour accéder à la gestion du site Web :
- Cliquez ici afin d'accéder à la gestion de votre site sur le Manager Infomaniak (besoin d'aide ?).
- Cliquez directement sur le nom attribué au site concerné:

- Cliquez sur Gérer les paramètres avancés:

- Cliquez sur l'onglet PHP / Apache:

- Cliquez sur les boutons à bascule (toggle switch) On/Off comme désiré:

- Cliquez sur le bouton Enregistrer en bas de page pour valider les modifications.
Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide explique comment personnaliser les limites d'un site hébergé sur un Hébergement Web mutualisé ou un Serveur Cloud.
Débloquer ou ajuster les limites d'un site
Pour accéder à la gestion du site Web :
- Cliquez ici afin d'accéder à la gestion de votre site sur le Manager Infomaniak (besoin d'aide ?).
- Cliquez directement sur le nom attribué au site concerné:

- Cliquez sur Gérer les paramètres avancés:

- Cliquez sur l'onglet PHP / Apache:

Vous pourrez notamment…
- … débloquer pendant 60 minutes la limite mémoire (
memory_limit= 1280 Mo) et le temps d'exécution maximal des scripts (max_execution_time= 60 minutes):
- Ce déblocage est possible au maximum 10 fois par an.
- … personnaliser les limites de:
max_execution_time(en secondes)memory_limit(en Mo)post_max_size&upload_max_filesize(taille maximum de fichier pour envoi, en Mo)- Serveur Cloud uniquement:
Max children(prenez connaissance de cet autre guide) - Serveur Cloud uniquement:
Max input time
N'oubliez pas d'enregistrer les changements en bas de page.
Valeurs maximales par type d'hébergement
| Limites | Mutualisé | Serveur Cloud | CLI (uniquement Serveur Cloud) |
|---|---|---|---|
| max_execution_time | 300 s | 3600 s | 0 (illimité) s max |
| memory_limit | 1280 Mo | 2048 Mo max | 512 Mo max |
| post_max_size + upload_max_filesize | 9223372036854775807 Mo max | 9223372036854775807 Mo max | 48 Mo max |
| max_children | 20 max | 20 (par défaut, modifiable) | |
| connexions simultanées par IP | 30 max | 30 (par défaut, modifiable) | |
| max_input_time | 0 (illimité) | 0 (par défaut, modifiable) | 0 (illimité) |
| fichiers (inodes) | aucune limite du nombre de fichier par hébergement | ||
Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide concerne les fonctionnalités de gestion de base de données disponibles avec les hébergements Infomaniak.
Découvrez également la solution de bases de données managées (DBaaS) haute disponibilité hébergée en Suisse, permettant de déployer facilement des clusters performants et sécurisés (MySQL, MariaDB, PostgreSQL) sans avoir à gérer l'infrastructure sous-jacente.
MySQL, SQLite, MariaDB, PostgreSQL…
Au niveau Système de Gestion de Base de Données, les hébergements supportent…
- … bases de données MySQL via accès PHP MySQL ou via Perl DBI+DBD::mysql
- Vous pouvez utiliser MySQL comme système de gestion de base de données (SGBD) sur les serveurs Infomaniak.
- Vous pouvez y accéder soit via PHP en utilisant les fonctions de base de données MySQL intégrées à PHP, soit via Perl en utilisant les modules DBI et DBD::mysql
- … MySQLI, l'interface d'accès native au MySQL (PHP5)
- MySQLI est une extension de PHP qui permet d'accéder à une base de données MySQL.
- C'est une version améliorée et plus récente de l'ancienne extension MySQL de PHP, offrant des fonctionnalités et des performances améliorées.
- … SQLite 3.x
- SQLite est un moteur de base de données SQL léger, autonome et sans serveur.
- Les serveurs Infomaniak prennent en charge SQLite version 3.x, ce qui signifie que vous pouvez utiliser SQLite pour stocker des données sur ces serveurs.
- … MariaDB
- MariaDB est un fork de MySQL et est souvent utilisé comme alternative à MySQL
- Vous pouvez donc utiliser MariaDB comme système de gestion de base de données sur les serveurs Infomaniak
- … le module PGSQL
- PGSQL est un module PHP qui permet de se connecter à une base de données PostgreSQL
- Cette fonctionnalité spécifique vous permet de vous connecter à une base de données PostgreSQL DISTANTE via PHP ; cela nécessite d'ouvrir le port approprié vers l'IP précise de la base de données PostgreSQL depuis le manager Infomaniak.
Dba, dbm, db2, sqlite ne sont pas supportées, SQL Server non plus (il s'agit d'un serveur de base de données qui nécessite une architecture Microsoft).
Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide détaille les bibliothèques logicielles permettant de manipuler le format PDF et compatibles avec les différentes offres d'hébergement web Infomaniak.
Préambule
- Les extensions PHP
PDFpermettent entre autre de générer un PDF à partir de données dynamiques pour création de factures personnalisées par exemple.
PDF et Serveur Cloud
Sur Serveur Cloud, vous pouvez installer des apps comme PDFtk …
- La classe PHP
FPDFest supportée. PDFlibde l'éditeur Apryse n'est plus proposé sur les Serveurs Cloud les plus récents car l'extensionPHP_PDFest devenue payante. Si vous vous la procurez il faudra l'installer sur VPS Cloud / VPS Lite ou Public Cloud .
Sur hébergement mutualisé, ImageMagick est actif et supporte les formats EPDF, PDF et PDFA.
Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide traite de "browscap.ini", un fichier de configuration historique utilisé par PHP pour identifier les caractéristiques des navigateurs web (nom, version, capacités, OS) à partir de leur chaîne User-Agent.
L'utilisation de browscap.ini est aujourd'hui considérée comme obsolète pour les nouveaux projets en raison de son impact négatif sur les performances et de l'évolution des standards du web.
Informations sur le fichier et usage legacy
Pour que la fonction native PHP get_browser() fonctionne, elle doit pointer vers un fichier browscap.ini à jour. Le chemin par défaut sur les serveurs est généralement :
/opt/php/lib/php/browscap.iniBien que déconseillé pour la production à cause de la taille du fichier (plusieurs Mo à charger en mémoire), vous pouvez consulter son contenu via ce script :
<?php
header("Content-type: text/plain");
if (file_exists("/opt/php/lib/php/browscap.ini")) {
echo file_get_contents("/opt/php/lib/php/browscap.ini");
} else {
echo "Fichier introuvable.";
}
?>Alternatives modernes recommandées
Pour les projets actuels, les développeurs privilégient les solutions suivantes :
- Bibliothèques via Composer : des outils comme
matomo/device-detectorouwhichbrowser/parsersont plus précis, plus rapides et se mettent à jour facilement via les dépendances du projet. - User-Agent Client Hints (UA-CH) : la nouvelle norme HTTP permettant d'obtenir des informations structurées et fiables directement du navigateur.
- Détection de fonctionnalités (Feature Detection) : utiliser le JavaScript (ou les requêtes
@supportsen CSS) pour vérifier si une fonction existe, plutôt que de deviner le nom du navigateur.
Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide explique comment exécuter le gestionnaire de dépendance open source Composer 2 à l'aide d'une commande SSH.
Préambule
- Composer est un gestionnaire de dépendances open source pour PHP permettant de définir, d’installer et de mettre à jour les bibliothèques nécessaires à un projet PHP.
- Composer 1 est obsolète depuis 2021, ne permet plus depuis 2025 d’installer de nouveaux packages ou d'effectuer de mises à jour.
- Seule la version 2 de Composer est désormais prise en charge et disponible sur toutes les versions de PHP de 7.2 à 8.3.
Exécuter Composer 2
Composer 2 est déjà préinstallé et accessible via SSH. Il n'est donc pas nécessaire de l'installer manuellement.
Utilisation simple
Connectez-vous à votre hébergement via SSH, puis utilisez la commande suivante:
composerCette commande exécutera automatiquement la version 2 de Composer compatible avec la version de PHP actuellement utilisée dans votre session.
Vérifier la version active
Vous pouvez vérifier la version de Composer disponible avec:
composer --versionExemple de sortie : Composer version 2.5.0 2022-12-20 10:44:08
Forcer une version de PHP spécifique
Si vous souhaitez exécuter Composer avec une version précise de PHP, des alias sont disponibles. Par exemple :
composer_php8.1 --versionou encore:
composer_php7.4Ces alias permettent d’exécuter Composer 2 avec l’interpréteur PHP spécifié, utile pour tester ou déployer un projet sur une version cible de PHP.
Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide explique comment spécifier un fichier qui sera chargé avant même la page voulue ou au début de chaque script PHP exécuté sur votre serveur, inclus comme s'il avait été appelé avec la fonction require(), mais plus globalement en utilisant la directive auto_prepend_file de PHP.
Préambule
- Pour par exemple déclarer les headers d'un site Web, il est possible de faire un fichier
headers.phpqui contient des fonctions PHPheader()et qui soit prepend au début de chaque fichier PHP…- … via un fichier
.user.ini(propre à un dossier), - … ou via la configuration du site du Manager (global) comme expliqué ci-dessous.
- … via un fichier
Inclure un fichier globalement depuis le Manager
Pour accéder à la gestion du site Web :
- Cliquez ici afin d'accéder à la gestion de votre site sur le Manager Infomaniak (besoin d'aide ?).
- Cliquez directement sur le nom attribué au site concerné:

- Cliquez sur Gérer les paramètres avancés:

- Cliquez sur l'onglet PHP / Apache:

- Complétez la ligne concernée en entrant le chemin du fichier à inclure.
- Cliquez sur le bouton Enregistrer en bas de page:

Après avoir défini cette directive, toutes les pages PHP sur votre serveur incluront automatiquement le fichier spécifié avant d'exécuter leur propre code.
Les headers définis dans un fichier .htaccess ne sont valables que pour le contenu non PHP (donc statique).
Infomaniak utilise php-fpm qui reçoit les différents headers via apache fast_cgi. Dans la RFC de cgi_www le header Strict-Transport-Security ne fait pas partie des headers passés via CGI et la documentation Apache le confirme. Prenez connaissance de cette autre RFC.
Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide concerne l'installation d'extension PHP sur Hébergements Web Infomaniak.
Utilisation d'extensions PHP Zend
- Zend Guard Loader est une extension PHP qui permet d'exécuter des scripts PHP chiffrés via Zend Guard.
- Zend Guard Loader est installé de base pour PHP <= 5.6 sur tous les hébergements Web et n'est pas disponible pour les versions de PHP >= 5.6.
- Depuis PHP 5.3.x, le module Zend Optimizer a été remplacé par ZendGuardLoader
- L'extension ZendOPCache nécessite un Serveur Cloud configuré avec PHP 5.5 minimum
Lien vers cette FAQ:
Cette FAQ a été utile?
Ce guide explique comment modifier la configuration serveur d'un site sur Hébergement Web Infomaniak.
Préambule
- Apache est le serveur HTTP.
- Il se configure avec un fichier
.htaccessplacée à la racine du site Web.
- Il se configure avec un fichier
- PHP est un langage de programmation utilisé pour créer des pages web dynamiques via un serveur HTTP.
- Il est possible de personnaliser les directives PHP avec un fichier
.user.inilesquelles seront effectives dans les dossier et sous-dossiers de l'emplacement du fichier .user.ini.
- Il est possible de personnaliser les directives PHP avec un fichier
- Prenez connaissance de cet autre guide au sujet de la création de fichiers .htaccess & .user.ini.
Modifier la configuration serveur d'un site…
… via le Manager
Pour modifier la configuration PHP et la plupart des paramètres (max_input_vars, allow_url_fopen, memory_limit, post_max_size + upload_max_filesize , etc.):
- Cliquez ici afin d'accéder à la gestion de votre site sur le Manager Infomaniak (besoin d'aide ?).
- Cliquez directement sur le nom attribué au site concerné:

- Cliquez sur Gérer les paramètres avancés:

- Cliquez sur les différents onglets Général, PHP / Apache et Extensions PHP pour procéder aux ajustements désirés:

- Prenez connaissance de cet autre guide si vous recherchez des informations au sujet des valeurs limites et des possibilités de déblocage de ces dernières.
- Prenez si nécessaire connaissance de cet autre guide concernant le quatrième onglet.
N'oubliez pas d'enregistrer les changements en bas de page.
… via le fichier .user.ini
Pour les directives PHP qui ne sont pas présentes côté Manager, il est nécessaire de définir les valeurs souhaitées dans le fichier .user.ini par exemple:
max_file_uploads = 20La liste des directives existantes se trouve sur le site officiel de PHP mais les éléments avec l'indication PHP_INI_SYSTEM dans la colonne Modifiable ainsi que max_input_time, memory_limit et mysqli.default_socket ne sont pas utilisables.
… en CLI
Pour personnaliser des directives PHP lors de l'exécution de scripts en ligne de commande (CLI) ou dans des tâches CRON, il est nécessaire de spécifier les valeurs souhaitées dans un fichier .user.ini.
Ensuite, pour appliquer ces configurations, on utilise l'exécutable PHP avec l'option -c suivi du chemin vers le fichier .user.ini.
Par exemple pour modifier la limite de mémoire disponible pour PHP à 1024M, on peut créer ou modifier le fichier .user.ini en utilisant la commande suivante:
echo 'memory_limit = 1024M' > .user.iniCette commande écrit la directive memory_limit avec la valeur 1024M dans le fichier .user.ini.
Ensuite, lors de l'exécution d'un script PHP en ligne de commande ou dans une tâche CRON, on utilisera la commande PHP avec l'option -c pour spécifier le fichier .user.ini contenant les configurations personnalisées.
L'exemple suivant active allow_url_fopen pour l'outil WP CLI (permet notamment de récupérer des extensions):
php -d allow_url_fopen=On ~/bin/wp package install trepmal/wp-revisions-cliphp: l'exécutable PHP-d allow_url_fopen=On: l'option-dpermet de définir une directive de configuration PHP (allow_url_fopen) avec la valeurOn~/bin/wp: chemin vers l'exécutable WP CLIpackage install trepmal/wp-revisions-cli: la commande spécifique pour installer le package WP CLItrepmal/wp-revisions-cli
Cela garantit que l'option allow_url_fopen est activée pendant l'exécution de la commande WP CLI spécifiée. L'activation de allow_url_fopen peut être nécessaire pour certaines opérations qui impliquent l'ouverture d'URL distantes, comme le téléchargement d'extensions ou de packages. Assurez-vous que cette option est activée de manière sécurisée et conformément aux meilleures pratiques de sécurité.
Lien vers cette FAQ:
Cette FAQ a été utile?