Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
par Walter Oliver
Les articles suivants contiennent des suggestions pour la mise en service de sites dans des environnements d'hébergement partagé.
Configuration de la journalisation et des diagnostics
Vue d’ensemble
IIS 7 fournit la même activité de site Web ou la même journalisation du trafic qu'IIS 6.0, mais inclut la nouvelle fonctionnalité de suivi des demandes échouées. Le suivi basé sur les requêtes permet de déterminer ce qui se passe avec une requête, vous permettant ainsi de voir chaque étape de la requête au fur et à mesure qu'IIS la traite.
Les problèmes, tels que des performances médiocres ou des échecs authentifiés, ou même l'erreur de serveur 500 d'ASP ou d'ASP.NET, peuvent être difficiles à résoudre. Failed Request Tracing met en mémoire tampon les événements de trace d'une requête et les écrit sur le disque en cas d'échec. L'administrateur du serveur définit une panne à l'aide des règles de traçage. Les règles de traçage peuvent être aussi larges que tous les codes de contenu et de statut, ou aussi spécifiques qu'un seul code de statut et de sous-statut tel que 404.2.
Pour l'hébergement partagé, il est recommandé de déléguer le suivi des requêtes ayant échoué aux propriétaires de sites, permettant ainsi aux propriétaires de sites de déterminer les problèmes avec leurs sites, ce qui permet d'éviter les appels d'assistance. Vous pouvez stocker les journaux de suivi dans le dossier logs\FailedRequestLogFiles, comme indiqué dans la rubrique Configuration des autorisations de partage et NTFS dans la section Configuration d’un serveur de fichiers distant pour le stockage de contenu .
Configuration des procédures
Suivi des demandes ayant échoué
Pour configurer l’emplacement du fichier journal suivi des requêtes ayant échoué à l’aide de la ligne de commande, utilisez les éléments suivants :
- Ouvrez une invite de commandes et exécutez ce qui suit :
%windir%\system32\inetsrv\AppCmd set config <sitename> -section:traceFailedRequestsLogging.directory:\\remotefileserver\content$\<sitename>\logs\failedRequestLogfiles
Il est également recommandé de configurer tous les champs de journalisation pour la journalisation W3SVC. Vous aurez peut-être besoin des informations de journalisation W3SVC lorsqu’un problème se produit.
Pour plus d’informations sur le suivi des demandes ayant échoué, consultez la procédure pas à pas de suivi des requêtes ayant échoué.
Emplacement du fichier journal
Pour configurer l'emplacement du fichier journal W3SVC à l'aide de la ligne de commande, utilisez ce qui suit :
- Ouvrez une invite de commandes et exécutez ce qui suit :
%windir%\system32\inetsrv\AppCmd set config <sitename> -section:-logfile.directory:\\remotefileserver\content$\<sitename>\logs\logfiles
Pour plus d’informations sur les diagnostics, consultez Résolution d’une erreur de serveur web.
Activation d’un utilisateur d’administration déléguée
IIS Manager permet à ceux qui hébergent ou administrent des sites Web de déléguer le contrôle administratif aux développeurs ou aux propriétaires de contenu, réduisant ainsi le coût de possession et la charge administrative pour l'administrateur du serveur.
Procédure
Pour activer un utilisateur délégué pour un site web à l’aide du Gestionnaire IIS, procédez comme suit :
- Accédez à outils d’administration , puis cliquez sur Gestionnaire des services Internet (IIS).
- Développez le nœud de nom du serveur.
- Développez le nœud Sites.
- Double-cliquez sur le nom du site sur lequel vous souhaitez activer l’utilisateur.
- Double-cliquez sur l'icône Autorisations du gestionnaire IIS.
- Dans le volet Actions , cliquez sur Autoriser l’utilisateur....
- Dans la boîte de dialogue Autoriser l’utilisateur , choisissez d’utiliser un utilisateur Windows ou un utilisateur du Gestionnaire IIS. Dans ce cas, sélectionnez un utilisateur Windows, tapez le nom, puis cliquez sur OK.
Pour plus d’informations sur la délégation, accédez à la Configuration de l’administration à distance et de la délégation de fonctionnalités vue d’ensemble.
Isolation de sites avec des pools d’applications
Chaque application, résidant dans son propre pool d'applications et configurée avec une identité de processus unique, offre le plus haut niveau d'isolation. Chaque application possède son propre processus et si l'application cesse de répondre, elle ne peut pas affecter les autres sites du serveur. Pour ces raisons, nous vous recommandons cette configuration pour un environnement d’hébergement partagé.
Améliorations d’IIS 7
IIS 7 introduit un service d'isolation de configuration qui empêche les pools d'applications d'avoir accès au fichier applicationHost.config. Au démarrage, IIS 7 lit le fichier applicationHost.config et écrit un fichier temporaire pour chaque pool d'applications contenant la configuration de ce pool. Le processus de travail a uniquement accès à ce fichier, et non aux autres fichiers de configuration du pool. Cette fonctionnalité offre à la fois une sécurité renforcée et des améliorations de performances.
Pour plus d’informations sur les pools d’applications, consultez Présentation de l’architecture IIS 7 dans la section « Pools d’applications IIS 7 ».
Configuration ASP.NET répertoires de compilation temporaires
Code de répertoire
Par défaut, le répertoire de compilation temporaire est :
"%windir%\Microsoft.NET\Framework\{version}\Temporary ASP.NET Files"
Ce répertoire contient tous les fichiers temporaires générés par ASP.NET. Ce répertoire est partagé entre tous les pools d'applications. Si plusieurs pools d'applications mutuellement non fiables coexistent sur le même hôte, l'administrateur de l'hôte doit configurer un répertoire de compilation distinct pour chaque pool d'applications.
Création et définition du répertoire
Pour créer et définir un répertoire de compilation temporaire unique, utilisez ce qui suit :
Ouvrez une invite de commande et exécutez la commande suivante pour créer un dossier et définir les autorisations :
md %systemdrive%\inetpub\tempcompilation\aspnettemp\<sitename> cacls %systemdrive%\inetpub\tempcompilation\aspnettemp\<sitename> /G AppPoolUsername:F Administrators:F System:F
Exécutez la commande suivante pour définir le répertoire de compilation temporaire sur un site :
%windir%\system32\inetsrv\appcmd set config "<sitename>" -section:compilation -tempDirectory:%systemdrive%\inetpub\tempcompilation\aspnettemp\site%1 /commit:webroot