Utilisation de PHPUn article de Aide Hebergeur.
Configuration de PHP, PHP.INIVoir la configuration PHPVous pouvez à tout moment visualiser la configuration détaillée de PHP pour votre site de la façon suivante :
Voici un exemple de phpinfo PHP4. Modifier la configuration PHPProcédure Espace Client v2Depuis votre Espace Client, cliquez sur l'onglet Hébergement Mutualisé puis sur le menu Hôtes Virtuels. Choisissez l'hôte virtuel concerné et cliquez sur le bouton Modifier la configuration PHP. Une fois votre choix validé, patientez quelques minutes le temps que votre modification se propage sur votre site. Vous remarquerez que chaque site, et même chaque sous-domaine de chaque site peut avoir une configuration PHP différente ce qui est particulièrement appréciable sur un hébergement mutualisé (c'est rarement le cas !) Les directives pouvant être personnalisées sont les suivantes (valeur par défaut en majuscule) :
Vous pouvez également activer/désactiver ces modules complémentaires :
Procédure Espace Client v1Votre Espace Client ne permet pas comme ci-dessus la configuration de PHP en un clic. Vous pouvez en revanche utiliser la variable PHPRC via le mod_env d'Apache. Voici la marche à suivre : 1. Créez un répertoire qui contiendra votre configuration pour PHP, /www/config par exemple. Placez ce dossier en chmod 700 par sécurité. Pour le chemin absolu, construisez-le de la manière suivante : "/home/première_lettre_du_nom_de_votre_site_en_minuscule/nom_de_votre_site". Par exemple : SetEnv PHPRC "/home/t/test/www/config/" Passer de PHP4 à PHP5Procédure Espace Client v2En suivant la procédure ci-dessus, vous pouvez également choisir pour chaque hôte virtuel PHP4 ou PHP5. Procédure Espace Client v1Vous devez créer un fichier .htaccess à placer à la racine du dossier qui est relié à l'adresse URL (par exemple, dans /www). Dans ce .htaccess, vous devez écrire ces lignes : AddHandler x-httpd-php5 .php Utiliser simultanément PHP4 et PHP5La souplesse de notre environnement mutualisé vous permet de développer dans les meilleures conditions. Un problème fréquent est de pouvoir tester et adapter un site sous PHP5 avant de faire le changement, ce qui généralement est impossible en mutualisé, et difficile en dédié. Depuis votre Espace Client, il vous suffit de créer un nouveau sous-domaine (par exemple php5.monsite.com) qui pointe dans le même dossier que votre site. Ainsi vous pourrez visualiser votre site en PHP5 depuis l'URL http://php5.monsite.com alors que l'URL connue des visiteurs continuera à fonctionner sous PHP4. Zend OptimizerZend Optimizer n'est pas installé car les optimisations se font au détriment de ressources beaucoup plus intensément utilisées, ce qui n'est pas raisonnable sur un environnement mutualisé comportant des milliers de sites. De plus, c'est un produit qui ne fonctionne que lorsque PHP est compilé en tant que module Apache. Or comme beaucoup d'hébergeurs, nous compilons PHP en module CGI. Le Zend Optimizer n'est donc pas compatible avec nos hébergements mutualisés. Si son utilisation vous est indispensable, vous pouvez vous orienter vers nos solutions d'hébergement sur serveur dédié virtuel.
Utilisation de la fonction mail()La fonction mail() de PHP est active sur tous nos hébergements mutualisés. Elle permet d'envoyer des e-mails depuis votre site Internet. Limitations et restrictionsLa fonction mail() peut être utilisée librement dans le cadre d'une utilisation normale et modérée, c'est-à-dire à l'exclusion de toute activité d'envoi en masse comme par exemple :
Ces activités sont possibles sur nos serveurs dédiés virtuels sur lesquels la fonction mail() est totalement libre et illimitée. Ceci ne dispense toutefois pas de respecter les règles d'utilisation pour l'envoi en masse. Nous nous réservons le droit de suspendre immédiatement tout site ne respectant pas ces consignes ou plus généralement ne respectant pas les règles de la Netiquette. Nous nous réservons également le droit de prendre à tout moment les décisions de bon sens qui s'imposent pour limiter les abus et éviter que quelques Clients ne puissent nuire au bon fonctionnement global de cette fonction. Actuellement, les restrictions en vigueur sont les suivantes :
Exemple de code pour l'envoi d'e-mail
Paiements Atos / SPplus / Paybox1) Paiement Atos Les exécutables request et response existent dans le PATH par défaut. Ils sont utilisables de la façon suivante : Pour Atos v6 : Pour Atos v5 (uniquement pour les Clients Nuxit v1 sur les anciennes plate formes) : Vous ne devez donc PAS uploader ces fichiers binaires sur votre FTP. En revanche, vous devez bien entendu uploader tous les fichiers PHP (call_request.php, call_response.php, etc.), les fichiers de paramétrage (parmcom, etc.) ainsi que le certificat crypté.
Le fonctionnement de Spplus repose sur le chargement d'une librairie partagée php_spplus.so chargée par l'intermédiaire de la fonction PHP dl(). Désormais, vous n'avez plus besoin de charger cette librairie, elle est chargée par défaut. Concrètement, supprimez dans vos fichiers PHP les lignes du type :
Le fonctionnement de Paybox repose sur l'exécution d'un binaire CGI en ligne de commande. Dans le premier cas, vous ne pourrez plus exécuter ce fichier binaire sur votre espace d'hébergement. Vous devrez utiliser le fichier "paybox" commun que nous mettons à votre disposition. Ce fichier se trouve dans le PATH par défaut, ce qui signifie que vous n'avez pas besoin d'en indiquer le chemin.
Utilisation des binaires ImageMagick (Clients v1 uniquement)Les binaires ImageMagick permettant le traitement d'images sont utilisables de la façon suivante :
L'utilisation d'ImageMagick est coûteuse en ressources et donc soumise à limitation. Si les binaires sont utilisés de façon trop intensive, une erreur 500 (Internal Server Error) pourra être retournée. Pour les Clients v2, ImageMagick n'est utilisable que sur un serveur virtuel ou serveur dédié. Utilisation des includes distantsUn include distant est une fonction qui permet d'inclure un fichier en utilisant son URL plutôt qu'un chemin physique sur le disque. Concrètement, imaginons que dans votre page PHP http://www.toto.com/mapage.php, vous souhaitiez inclure un fichier qui se trouve dans le même dossier et qui se nomme titi.php. En principe, vous devriez faire :
ou encore :
en supposant que le chemin physique de votre dossier est /web/toto/www. Ceci est la façon correcte et propre de programmer. Mais il existe une autre manière, bien moins appropriée :
Que de passe-t-il dans ce cas ? Plutôt que de charger la page qui se trouve sur le disque local, juste à coté, le serveur va exécuter une connexion internet HTTP sur ... lui même pour appeler la page concernée ! C'est un peu comme si vous preniez la voiture pour vous rendre chez votre voisin. Avec cet exemple, on comprend bien que les includes distants n'ont de sens que si le fichier à inclure ne se trouve pas sur le même serveur que le fichier qui l'inclut ! Cette programmation présente des problèmes évidents :
La solution est bien entendu de remplacer ces includes distants par des includes locaux, en utilisant un chemin disque relatif ou absolu. Si vous utilisez un logiciel PHP de type CMS, essayez de voir si dans la configuration vous pouvez agir sur ce type de comportement voire éventuellement désactiver un module qui serait responsable de ce type d'includes. Vous pouvez facilement savoir quelles sont les pages affectées : téléchargez vos fichiers logs Apache depuis votre Espace Client, et ouvrez les avec un bloc notes : recherchez la chaîne 127.0.0.1 : vous trouverez ainsi toutes les requetes de ce type (bouclage du serveur sur lui meme). |