Comment utiliser une application Python sur un hébergement cPanel


Définition

Comment utiliser le gestionnaire d'application Python sur un hébergement cPanel

Le gestionnaire d'application  Python de cPanel vous permettra d'installer une application Python avec les versions 2.7, 3.3, 3.4 ,3.5,3.6 ou 3.7
Il vous offre une interface utilisateur conviviale qui vous aidera à vous familiariser plus rapidement avec Python

Procédure

L'écosystème Python avec nos formules cPanel

Python est un langage de programmation informatique très populaire et est aujourd'hui l'un des langages utilisés pour créer et déployer des sites web ou encore des applications en ligne.

Les formules d'hébergements web cPanel chez LWS supportent l'utilisation de Python dans l'environnement d'hébergement web mutualisé. Vous pouvez sélectionner la version Python de votre choix et l'intégrer au service web existant grâce à Phusion Passenger et les interfaces WSGI.

Qu'est-ce que Phusion Passenger ?

Pour mettre à disposition à nos clients un environnement stable, robuste et sécurisé, nous intégrons vos applications Python avec le service web Apache grâce à l'outil Phusion Passenger.

Nous ne mettons pas en place un reverse proxy, et les applications Python ne peuvent pas s'exécuter en standalone avec son propre serveur web. Votre application Python n'écoutera sur aucun port, celui-ci communiquera exclusivement en WSGI avec le service Passenger. Si vous utilisez un framework, renseignez-vous de sa compatibilité avec Phusion Passenger et les interfaces WSGI.

Comment installer une application écrite sous Python ?

Depuis votre panneau de contrôle cPanel, retrouvez l'icône Setup Python App dans la rubrique Logiciel.

Comment utiliser une application Python sur un hébergement cPanel

Dans la page qui s'ensuit, cliquer sur le bouton « Create Application » pour ajouter une nouvelle application.

Comment utiliser une application Python sur un hébergement cPanel

Remplissez ensuite les champs conformément aux besoins de votre application :

  • Python version : Cette option vous permet de sélectionner une version Python spécifique pour votre application.
  • Application root : l'emplacement de votre application Python, par rapport à votre racine FTP. Nous vous recommandons de ne pas mettre votre application Python dans le dossier public_html.
  • Application URL : l'URL racine de votre application Python.
  • Application startup file : le fichier .py contenant l'initialisation de votre objet WSGI (chemin relatif par rapport à application root)
  • Application Entry point : le nom de votre objet WSGI dans le fichier défini dans Application startup file.

Comment utiliser une application Python sur un hébergement cPanel

Cliquez ensuite sur le bouton « Create » une fois que votre application a été paramétrée.

Si votre application startup file n'existe pas encore, l'outil va créer immédiatement ce fichier avec un contenu à titre d'exemple. Cet exemple affichera « It works! » sur toutes les requêtes HTTP associés à celui-ci.

Voici le contenu de ce script d'exemple :

import os
import sys

sys.path.insert(0, os.path.dirname(__file__))

def application(environ, start_response):
    start_response('200 OK', [('Content-Type', 'text/plain')])
    message = 'It works!\n'
    version = 'Python %s\n' % sys.version.split()[0]
    response = '\n'.join([message, version])
    return [response.encode()]

Accéder à votre application depuis le terminal

L'utilisation du terminal en ligne de commande est partie intégrante de l'écosystème Python. Pour accéder à l'environnement de votre application depuis le terminal, connectez-vous à celui-ci (depuis le terminal web cPanel ou depuis un client SSH) et copiez la commande indiquée pour entrer dans l'environnement de votre application :

Comment utiliser une application Python sur un hébergement cPanel

Cette action activera automatiquement le bon environnement virtuel pour votre application, incluant ainsi la bonne version de Python et PIP, ainsi que les dépendances installées dans l'environnement.

Exclure un dossier/sous-domaine du processeur Python

Vous noterez que si votre application Python se trouve dans votre dossier public_html, alors tous les sous-dossiers seront couverts par l'application. Ce comportement peut être modifié, notamment si vous avez, par exemple, un sous-dossier dans votre public_html rattaché à un autre nom de domaine ou un autre sous-domaine.

Pour cela, ajouter ceci dans le fichier .htaccess du dossier auquel vous ne voulez pas que votre application Python s'exécute :

PassengerEnabled off

Ceci désactivera alors Phusion Passenger qui est le connecteur entre votre application Python et votre serveur web. Notez que ceci affectera également tous les sous-dossiers.

Déboguer une application Python

Pour déboguer une application Python, vous pouvez consulter le log d'erreur Apache. Le fichier log d'erreurs Apache contient :

  • La sortie STDOUT et STDERR de l'application Python
  • Les erreurs liées à Passenger
  • Les erreurs liées à Apache

Si vous avez défini manuellement la valeur PassengerLogFile dans le fichier .htaccess de votre site, la sortie STDOUT et STDERR ainsi que les erreurs liées à Passenger sont envoyés dans ce fichier au lieu du fichier log Apache.

Vous pouvez aussi mettre la valeur PassengerFriendlyErrorPages sur on dans votre fichier .htaccess pour afficher directement sur le navigateur web les erreurs liés au démarrage de votre application Python.

Pour aller plus loin

Exclure un dossier/sous-domaine du processeur Python

Vous noterez que si votre application Python se trouve dans votre dossier public_html, alors tous les sous-dossiers seront couverts par l'application. Ce comportement peut être modifié, notamment si vous avez, par exemple, un sous-dossier dans votre public_html rattaché à un autre nom de domaine ou un autre sous-domaine.

Pour cela, ajouter ceci dans le fichier .htaccess du dossier auquel vous ne voulez pas que votre application Python s'exécute :

PassengerEnabled off

Ceci désactivera alors Phusion Passenger qui est le connecteur entre votre application Python et votre serveur web. Notez que ceci affectera également tous les sous-dossiers.

Notez cet article

Vous avez noté 0 étoile(s)

Cet article a été lu 20862 fois.

Note : 4 / 5 - 2 avis.

comments powered by Disqus
Top