Session ASP <session>

Vue d’ensemble

L’élément <session> de l’élément <asp> spécifie les paramètres d’état de session des pages ASP (Active Server Pages). L’état de session est un moyen par lequel Internet Information Services (IIS) 7 stocke des informations sur chaque session cliente unique. Par exemple, si votre site Web a une application de panier, le contenu du panier de chaque client peut être stocké dans l’état de session.

Vous devez disposer de ressources mémoire sur le serveur pour conserver l’état de session ASP, et la quantité de mémoire requise varie en fonction de la quantité d’informations que vous stockez dans chaque session. Pour aider à réglementer les ressources que IIS 7 utilisera, vous pouvez spécifier les paramètres pour l’état de session. Par exemple, l’attribut max spécifie le nombre maximal de sessions à stocker, et l’attribut délai d’expiration spécifie la durée de chaque session ASP.

Si vos applications ne nécessitent pas d’état de session, la définition de l’attribut allowSessionState sur false désactive l’état de session ASP.

Compatibilité

Version Notes
IIS 10.0 L’élément <session> n’a pas été modifié dans IIS 10.0.
IIS 8.5 L’élément <session> n’a pas été modifié dans IIS 8.5.
IIS 8.0 L’élément <session> n’a pas été modifié dans IIS 8.0.
IIS 7.5 L’élément <session> n’a pas été modifié dans IIS 7.5.
IIS 7.0 L’élément <session> de l’élément <asp> a été introduit dans IIS 7.0.
IIS 6.0 L’élément <session> remplace les propriétés de métabase IIS 6.0 suivantes :
  • AspAllowSessionState
  • AspKeepSessionIDSecure
  • AspSessionMax
  • AspSessionTimeout

Programme d’installation

Pour prendre en charge et configurer des applications ASP sur votre serveur web, vous devez installer le module ASP. Pour installer le module ASP, observez les étapes suivantes.

Windows Server 2012 ou Windows Server 2012 R2

  1. Dans la barre des tâches, cliquez sur Gestionnaire de serveur.
  2. Dans Gestionnaire de serveur, cliquez sur le menu Gérer, puis sur Ajouter des rôles et des fonctionnalités.
  3. Dans l’Assistant Ajout de rôles et de fonctionnalités, cliquez sur Suivant. Sélectionnez le type d’installation, puis cliquez sur Suivant. Sélectionnez le serveur de destination, puis cliquez sur Suivant.
  4. Dans la page Rôles de serveur, développez Serveur web (IIS), Serveur web, Développement d’applications, puis sélectionnez ASP.
    Image of Web Server and Application Development pane expanded with A S P selected.
  5. Si la boîte de dialogue Ajouter des fonctionnalités requises par ASP ? s’affiche, cliquez sur Ajouter des fonctionnalités. (Cette page s’affiche uniquement si vous n’avez pas déjà installé le service de rôle Extensions ISAPI sur votre serveur.)
  6. Sur la page Rôles de serveurs, cliquez sur Suivant.
  7. Dans la page Sélectionner les composants, cliquez sur Suivant.
  8. Dans la page Confirmer les sélections d’installation, cliquez sur Installer.
  9. Dans la page Résultats , cliquez sur Fermer.

Windows 8 ou Windows 8.1

  1. Dans l’écran d’accueil, déplacez le pointeur jusqu’au coin inférieur gauche, cliquez avec le bouton droit sur le bouton Démarrer, puis cliquez sur Panneau de configuration.

  2. Dans le Panneau de configuration, cliquez sur Programmes et fonctionnalités, puis sur Activer ou désactiver des fonctionnalités Windows.

  3. Développez Internet Information Services, Services World Wide Web, Fonctionnalités de développement d’applications, puis sélectionnez ASP.
    Screenshot of Turn Windows on or off feature page with Application Development Features pane expanded and A S P selected.

    Remarque

    Le rôle Extensions ISAPI est sélectionnée si elle n’a pas déjà été installée.

  4. Cliquez sur OK.

  5. Cliquez sur Fermer.

Windows Server 2008 ou Windows Server 2008 R2

  1. Dans la barre des tâches, cliquez sur Démarrer, pointez sur Outils d’administration, puis cliquez sur Gestionnaire de serveur.
  2. Dans le volet hiérarchie du Gestionnaire de serveur, développez Rôles, puis cliquez sur Serveur web (IIS).
  3. Dans le volet Serveur web (IIS), faites défiler jusqu’à la section Services de rôle, puis cliquez sur Ajouter des services de rôle.
  4. Dans la page Sélectionner des services de rôle de l’Assistant Ajout de services de rôle, sélectionnez ASP.
    Screenshot of Select Role Services page of the Add Role Services Wizard displaying A S P selected.
  5. Si la boîte de dialogue Ajouter des services de rôle requis par ASP s’affiche, cliquez sur Ajouter les services de rôle requis. (Cette page s’affiche uniquement si vous n’avez pas déjà installé le service de rôle Extensions ISAPI sur votre serveur.)
    Screenshot of Add Role Services dialog box displaying the Add role services required for A S P question and Add Required Role Services button.
  6. Dans la page Sélectionner les services de rôle, cliquez sur Suivant.
  7. Dans la page Confirmer les sélections pour l'installation, cliquez sur Installer.
  8. Dans la page Résultats , cliquez sur Fermer.

Windows Vista ou Windows 7

  1. Dans la barre des tâches, cliquez sur Démarrer, puis sur Panneau de configuration.
  2. Dans le Panneau de configuration, cliquez sur Programmes et fonctionnalités, puis sur Activer ou désactiver des fonctionnalités Windows.
  3. Développez Internet Information Services, Services World Wide Web, puis Fonctionnalités de développement d’applications.
  4. Sélectionnez ASP, puis cliquez sur OK.
    Screenshot of Turn Windows features on or off page displaying Application Development Features pane expanded and A S P selected.

Procédure

Comment configurer des paramètres d’état de session ASP pour un site ou une application

  1. Ouvrez le Gestionnaire des services Internet (IIS) :

    • Si vous utilisez Windows Server 2012 ou Windows Server 2012 R2 :

      • Dans la barre des tâches, cliquez sur Gestionnaire de serveur, cliquez sur Outils, puis sur Gestionnaire Internet Information Services (IIS).
    • Si vous utilisez Windows 8 ou Windows 8.1 :

      • Maintenez la touche Windows enfoncée, appuyez sur la lettre X, puis cliquez sur Panneau de configuration.
      • Cliquez sur Outils d’administration, puis double-cliquez sur Gestionnaire des services Internet (IIS).
    • Si vous utilisez Windows Server 2008 ou Windows Server 2008 R2 :

      • Cliquez sur Démarrer, placez le curseur sur Outils d’administration, puis cliquez sur Gestionnaire Internet Information Services (IIS).
    • Si vous utilisez Windows Vista ou Windows 7 :

      • Dans la barre des tâches, cliquez sur Démarrer, puis sur Panneau de configuration.
      • Double-cliquez sur Outils d’administration, puis double-cliquez sur Gestionnaire des services Internet (IIS).
  2. Dans le volet Connexions , développez le nom du serveur, développez Sites, puis accédez au site Web ou à l’application web que vous souhaitez configurer.

  3. Dans le volet Accueil du site ou de l’application, double-cliquez sur ASP.
    Screenshot pf application Home pane displaying A S P highlighted.

  4. Dans le volet ASP, développez la section Propriétés de session et configurez vos paramètres souhaités.
    Image of A S P pane with Session Properties section expanded and highlighted.

  5. Cliquez sur Appliquer dans le volet Actions.

Configuration

Attributs

Attribut Description
allowSessionState Attribut booléen facultatif.

Spécifie si la persistance de l’état de session pour une application ASP est activée.

La valeur par défaut est true.
keepSessionIdSecure Attribut booléen facultatif.

Spécifie si un ID de session est envoyé en tant que cookie sécurisé s’il est affecté via un canal de session sécurisé.

La valeur par défaut est true.
max Attribut uint facultatif.

Spécifie le nombre maximal de sessions simultanées.

La valeur par défaut est 4294967295.
timeout Attribut timeSpan facultatif.

Spécifie la durée maximale (hh:mm:ss) pendant laquelle un objet de session est maintenu après la dernière demande associée à cet objet.

La valeur par défaut est 00:20:00.

Éléments enfants

Aucune.

Exemple Configuration

L’exemple de configuration suivant active l’état de session ASP, définit le nombre maximal de sessions ASP sur 1000 et définit le délai d’expiration de la session sur 10 minutes pour le site web par défaut.

<location path="Default Web Site">
   <system.webServer>
      <asp>
         <session allowSessionState="true" max="1000" timeout="00:10:00" />
      </asp>
   </system.webServer>
</location>

Exemple de code

Les exemples de code suivants activent l’état de session ASP, définissent le nombre maximal de sessions ASP sur 1000 et définissent le délai d’expiration de session sur 10 minutes pour le site web par défaut.

AppCmd.exe

appcmd.exe set config "Default Web Site" -section:system.webServer/asp /session.allowSessionState:"True" /commit:apphost
appcmd.exe set config "Default Web Site" -section:system.webServer/asp /session.max:"1000" /commit:apphost
appcmd.exe set config "Default Web Site" -section:system.webServer/asp /session.timeout:"00:10:00" /commit:apphost

Remarque

Vous devez veiller à définir le paramètre commit sur apphost quand vous utilisez AppCmd.exe pour configurer ces paramètres. Cela valide les paramètres de configuration dans la section d’emplacement appropriée dans le fichier ApplicationHost.config.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using (ServerManager serverManager = new ServerManager())
      {
         Configuration config = serverManager.GetApplicationHostConfiguration();
         ConfigurationSection aspSection = config.GetSection("system.webServer/asp", "Default Web Site");

         ConfigurationElement sessionElement = aspSection.GetChildElement("session");
         sessionElement["allowSessionState"] = true;
         sessionElement["max"] = 1000;
         sessionElement["timeout"] = TimeSpan.Parse("00:10:00");

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample

   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim aspSection As ConfigurationSection = config.GetSection("system.webServer/asp", "Default Web Site")

      Dim sessionElement As ConfigurationElement = aspSection.GetChildElement("session")
      sessionElement("allowSessionState") = True
      sessionElement("max") = 1000
      sessionElement("timeout") = TimeSpan.Parse("00:10:00")

      serverManager.CommitChanges()
   End Sub

End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var aspSection = adminManager.GetAdminSection("system.webServer/asp", "MACHINE/WEBROOT/APPHOST/Default Web Site");

var sessionElement = aspSection.ChildElements.Item("session");
sessionElement.Properties.Item("allowSessionState").Value = true;
sessionElement.Properties.Item("max").Value = 1000;
sessionElement.Properties.Item("timeout").Value = "00:10:00";

adminManager.CommitChanges();

VBScript

Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set aspSection = adminManager.GetAdminSection("system.webServer/asp", "MACHINE/WEBROOT/APPHOST/Default Web Site")

Set sessionElement = aspSection.ChildElements.Item("session")
sessionElement.Properties.Item("allowSessionState").Value = True
sessionElement.Properties.Item("max").Value = 1000
sessionElement.Properties.Item("timeout").Value = "00:10:00"

adminManager.CommitChanges()