1 000 FAQ, 500 tutoriels et vidéos explicatives. Ici, il n'y a que des solutions !
Utiliser un script Perl ou Python
Ce guide détaille l'utilisation de scripts Perl ou Python sur les hébergements Infomaniak et la gestion de leurs modules.
Prérequis
- Hébergements Web mutualisés: le module CGI n'est plus disponible ; l'exécution de scripts Perl et Python n'est donc pas supportée.
- Il est nécessaire de migrer vers un Serveur Cloud.
- Serveurs Cloud Managés: pour bénéficier des dernières technologies, il est possible de mettre à niveau son Serveur Cloud.
Configuration Web (Apache/CGI)
Pour exécuter des scripts Python ou Perl via Apache sur Serveur Cloud, l'interprétation de fichiers avec les extensions .py et .pl n'est pas active par défaut.
À l'aide de votre logiciel/client FTP ou du FTP Manager, ajouter et adapter la directive suivante dans le fichier .htaccess situé dans le dossier contenant vos scripts:
AddHandler cgi-script .pl .cgi .py
Options +ExecCGIInstallation de modules supplémentaires
Sur un Serveur Cloud, vous avez la possibilité d'installer des librairies tierces non présentes par défaut.
Python
- L'installation passe par
PIP, qui est un gestionnaire de paquets utilisé pour installer et gérer des paquets écrits en Python. - Infomaniak propose
PIPetPIP3via l'outil Fast Installer. - Une fois PIP installé, vous pourrez installer des modules Python en spécifiant
--userlors de la commande. Par exemple: pip3 install mysql-connector-python --user
Perl
- L'ajout de modules Perl s'effectue également via SSH (console). Il est nécessaire de les installer dans l'arborescence utilisateur et d'en définir le chemin complet au sein des scripts.
Informations techniques importantes
- Chemin de l'interpréteur (Path) :
/usr/bin/python - Extensions : Les scripts doivent porter l'extension
.pl,.cgiou.py. - Limitations : Le module
mod_pythonn'est pas supporté.
Résolution d'erreurs (CGIWrap)
Si vous rencontrez l'erreur suivante lors du chargement d'une image :
CGIWrap Error: Execution of this script not permitted
Request Data:Extra Path Info: /dossier/.../image.PL.12.34.gifLe serveur interprète le fichier comme un script car il contient ".PL" (ou .PY) dans son nom.
Solution : Renommez simplement le fichier pour retirer cette mention (exemple : image-12-34.gif).