Utiliser Python avec .NET, comment activer python sur un serveur IIS

Environnement:
– Windows 10 64
– Python 3.6.4 release
– IIS v 10.0.16299.15

Il vous faut d’abort ajouter le composant CGI via l’ajout suppression de programme.

Dans le menu de recherche de windows, rechercher Applications et fonctionnalités puis dans la fenêtre Applications et fonctionnalités à droite cliquer sur Programmes et fonctionnalités

Puis cliquez sur « Activer ou désactiver des fonctionnalités Windows (à gauche)

=> Activer ou désactiver des fonctionnalités Windows
=> Internet Information Service
=> Service World Wide Web
=> Fonctionnalités de développement d’applications
=> cocher CGI

Ensuite télécharger et installer python

https://www.python.org/downloads/
choisir Python 3.6.4 release
https://www.python.org/downloads/release/python-364/
=> Windows x86-64 executable installer

Créer un dossier de test sur votre disque
Ex:
D:\test_python_IIS

ouvrir une fenêtre de commande MSDOS (cmd) allez sur le dossier créé attribuez les droits à ce dossier

cmd:

D:
CD test_python_IIS
icacls . /grant « NT AUTHORITY\IUSR:(OI)(CI)(RX) »
icacls . /grant « Builtin\IIS_IUSRS:(OI)(CI)(RX) »

Ouvrez IIS avec la recherche windows ou cmd
%windir%\system32\inetsrv\iis.msc

Aller sur Sites => Default Web Site
Clic droit Ajouter une Application (Alias:py, Chemin D:\test_python_IIS)

Puis su py => icone Mappage de gestionnaires => Ajouer un mappage de script (barre de gauche)

Chemin des demandes = *.py
Exécutable = « C:\Program Files (x86)\Python36-32\python.exe » %s %s
Nom = Python

=> Répondre oui à « souhaitez vous etc … »

Créer un fichier test.py à mettre dans D:\test_python_IIS et saisissez un code python de test

print(‘salut Dean Kong A Siou!’)

Activer bien l’exploration de répertoire à l’application py
Parcourrez py

Voilà ouvre ensuite test.py et si tout c’est bien passé votre code python affichera:

Source:
https://stackoverflow.com/questions/6823316/python-on-iis-how

Activer le chemin parent sur IIS

Allez dans l’administration IIS
Gestionnaire des services internet (IIS)
Sites => votreSite => section IIS de la page => selectionnez ASP

Option Comportement => Activer les chemins d’accès relatifs au répertoire parent => mettre sur true

Pour visual studio 2019

trouver le dossier caché .vs => votreProjet => dossier config => fichier applicationhost.config

noeud asp ajouter  enableParentPaths= »true »

<asp scriptErrorSentToBrowser= »true » appAllowDebugging= »true » enableParentPaths= »true »>

web.config allowDefinition=MachineToApplication erreur

La présence d’un web.config dans un sous dossier de votre site provoque une erreur de type allowDefinition=MachineToApplication

  • Mettez le dossier en question dans un répertoire différent
  • Dans le gestionnaire des services Internet IIS ajoutez au site un répertoire virtuel
  • Convertissez ce répertoire virtuel en application pour qu’il prenne en compte le web.config
  • redemmarez le serveur IIS

Debug ASP, trouver le fichier de config IIS express applicationhost.config

Vous avez besoin de configurer le fichier applicationhost.config pour faire du débug de fichier ASP simple (https://weblogs.asp.net/dixin/debugging-classic-asp-with-visual-studio)

Mais où se trouve ce pt de fichier ???
Si vous passez par l’arborescence de votre explorateur vous ne le trouverez peut être pas…

%USERPROFILE%\Documents\IISExpress\config\applicationhost.config

Ma solution
=> Allez dans C:\Users\VotreUser
=> dans la barre de navigation saisissez directement Documents (C:\Users\VotreUser\Documents)

La configuration à apporter au fichier

 

Afficher les processus de travail sur IIS v7.5 pour retrouver un ID

Pour faire du debogage sur Visual Studio sur des pages ASP vous aurez besoin d’attacher votre page à un processus, il se peut que vous ayez plusieurs processus IIS de lancé, pour savoir lequel choisir il vous faut donc localiser le bon processus.

=> Page d’accueil IIS (Gestion des services Internet)
=> Icone Processus de travail
Vous verrez ainsi la liste des processus en cours d’exécution (Nom du pool, ID du processus, utilisation)

screen-2016-11-10-09_19_31

Active Server Pages (ASP) erreur ‘ASP 0131’ activer les chemins parents

Pour activer les chemins parents sur IIS

Ouvrez le gestionnaire des services Internet IIS

Ouvrez le module ASP (installez le si il ne se trouve pas dans la liste des icones)

Paramètre: Mettre True et appliquez
Activer les chemins d’accès relatifs au répertoire parent

Redemarrez le serveur IIS

screen-2016-09-29-15_51_21

Une solution à opter: utiliser le chemin virtuel (lien à partir de la racine du site) pour définir un lien include

#include virtual= »/dossier/fichier.asp »