Comment résoudre les pertes de sessions sur un hébergement ASP ?

Définition

Qu'est ce qu'une session ?

Une session en programmation est un groupe de données qui sont stockées temporairement côté serveur pour une utilisation spécifique par un utilisateur connecté.

Les sessions sont généralement utilisées pour stocker des informations d'identification de l'utilisateur, comme un nom d'utilisateur ou un ID d'utilisateur, ainsi que des informations de l'état de l'application, comme les éléments d'un panier d'achat en ligne.

Les sessions sont généralement associées à un identifiant de session unique qui est stocké côté client, généralement sous la forme d'un cookie, pour permettre au serveur de récupérer les données de session appropriées pour chaque demande de l'utilisateur.

Procédure

Comment régler mon problème de sessions sur mon site ?

Le problème réside essentiellement sur les éléments stockés en RAM sur la durée. Une fois la RAM saturée, le système lance un reboot qui va supprimer les éléments stockés et donc potentiellement les sessions sur votre site. Cela peut donc expliquer pourquoi un visiteur peut se retrouver déconnecté pendant qu'il visite votre site.

Pour éviter cela, voici la procédure à suivre :

1. Générer une clé sur Machine Key

Pour cela, rendez vous sur le site machineKey et cliquez sur le bouton "GENERATE"

Comment résoudre les pertes de sessions sur un hébergement ASP ?

Copiez ensuite le code généré dans un coin

Comment résoudre les pertes de sessions sur un hébergement ASP ?

2. Configuration du fichier web.config

Rendez-vous dans l'administration de votre Plesk depuis la gestion de votre service sur le Panel LWS.

Comment résoudre les pertes de sessions sur un hébergement ASP ?

Une fois sur Plesk, sélectionnez dans le menu de gauche "Sites web et domaines"

Dans la page qui s'affiche, ouvrez le menu déroulant lié à votre domaine.

Cliquez sur "Gestionnaire de fichiers"

Comment résoudre les pertes de sessions sur un hébergement ASP ?

Dans le gestionnaire, vous arriverez à la racine de votre service où se trouvent les fichiers de votre site. Regardez si vous avez un fichier nommé web.config.

Comment résoudre les pertes de sessions sur un hébergement ASP ?

Si c'est le cas, on éditera celui-ci, sinon on le créera en copiant tout le code que je donnerai plus bas.

Comment résoudre les pertes de sessions sur un hébergement ASP ?

Dans ce fichier, dont le contenu est un XML, nous allons ajouter ceci dans la partie <system.web> :

<system.web>
    <sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" cookieless="false" timeout="20" />
    <machineKey decryption="AES" validation="SHA1" decryptionKey="7ucKOvWBqXrsVMBl" validationKey="ZT6ikp0oQdfQT59F" />
</system.web>

Au niveau de la troisième ligne commençant par "<machineKey", remplacez l'ensemble de cette ligne par celle que vous avez récupérée sur Machine Key lors de l'étape 1.

En partant du fichier de base, qui se trouve à la racine de votre service lors de la livraison, voici le code que cela donnerait en ajoutant ces quelques lignes en plus.

Si vous n'aviez pas le fichier web.config, créez-le en recopiant l'ensemble du code sans oublier de modifier la partie indiquée plus haut concernant le code généré par Machine Key

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <httpErrors>
      <remove statusCode="400" />
      <error statusCode="400" path="D:\www\jetestuneformuleasp.site\error_docs\bad_request.html" />
      <remove statusCode="401" />
      <error statusCode="401" path="D:\www\jetestuneformuleasp.site\error_docs\unauthorized.html" />
      <remove statusCode="403" />
      <error statusCode="403" path="D:\www\jetestuneformuleasp.site\error_docs\forbidden.html" />
      <remove statusCode="404" />
      <error statusCode="404" path="D:\www\jetestuneformuleasp.site\error_docs\not_found.html" />
      <remove statusCode="405" />
      <error statusCode="405" path="D:\www\jetestuneformuleasp.site\error_docs\method_not_allowed.html" />
      <remove statusCode="406" />
      <error statusCode="406" path="D:\www\jetestuneformuleasp.site\error_docs\not_acceptable.html" />
      <remove statusCode="407" />
      <error statusCode="407" path="D:\www\jetestuneformuleasp.site\error_docs\proxy_authentication_required.html" />
      <remove statusCode="412" />
      <error statusCode="412" path="D:\www\jetestuneformuleasp.site\error_docs\precondition_failed.html" />
      <remove statusCode="414" />
      <error statusCode="414" path="D:\www\jetestuneformuleasp.site\error_docs\request-uri_too_long.html" />
      <remove statusCode="415" />
      <error statusCode="415" path="D:\www\jetestuneformuleasp.site\error_docs\unsupported_media_type.html" />
      <remove statusCode="500" />
      <error statusCode="500" path="D:\www\jetestuneformuleasp.site\error_docs\internal_server_error.html" />
      <remove statusCode="501" />
      <error statusCode="501" path="D:\www\jetestuneformuleasp.site\error_docs\not_implemented.html" />
      <remove statusCode="502" />
      <error statusCode="502" path="D:\www\jetestuneformuleasp.site\error_docs\bad_gateway.html" />
      <remove statusCode="503" />
      <error statusCode="503" path="D:\www\jetestuneformuleasp.site\error_docs\maintenance.html" />
    </httpErrors>
    <tracing>
      <traceFailedRequests>
        <clear />
      </traceFailedRequests>
    </tracing>
  </system.webServer>
  <system.web>
    <compilation tempDirectory="D:\www\jetestuneformuleasp.site\tmp" />
    <sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" cookieless="false" timeout="20" />
    <machineKey decryption="AES" validation="SHA1" decryptionKey="7ucKOvWBqXrsVMBl" validationKey="ZT6ikp0oQdfQT59F" />
  </system.web>
</configuration>

Enregistrez votre fichier et vous voilà protégé du problème de sessions.

Notez cet article :

Cet article vous a été utile ?

Article utileOui

Article non utileNon

Vous souhaitez nous laisser un commentaire concernant cet article ?

Si cela concerne une erreur dans la documentation ou un manque d'informations, n'hésitez pas à nous en faire part depuis le formulaire.

Pour toute question non liée à cette documentation ou problème technique sur l'un de vos services, contactez le support commercial ou le support technique

Merci ! N'hésitez pas à poser des questions sur nos documentations si vous souhaitez plus d'informations et nous aider à les améliorer.


Vous avez noté 0 étoile(s)

3mn de lecture

Comment accéder au panel Plesk ?

3mn de lecture

Comment créer un sous domaine dans Plesk ?

4mn de lecture

Comment accéder aux statistiques d'un site dans Plesk ?

6mn de lecture

Gestion des droits CHMOD


Poser une question à l'équipe LWS et à sa communauté