J'ai une appli qui se sert des sessions.
Tout va bien en local sur mon poste XP Pro mais sur mon 2000 Advanced Server je perds les données stockées dans la Session.

Je fais un
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Response.Write(Session.SessionID & "<br />")
pour voir ce que me répond mon serveur.
A chaque actualisation, PostBack ou lien vers une autre page le SessionID change.

La seule différence de config est que sur le serveur c'est un Site Web et sur mon poste, c'est un Répertoire Virtuel.
J'ai vérifier les options de IIS sur les deux machines, tout est pareil.

mon web.config
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<sessionState 
            mode="InProc"
            stateConnectionString="tcpip=127.0.0.1:42424"
            sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
            cookieless="false" 
            timeout="20" 
    />
mon Global.asax.vb (il n'y a rien dans les autres Sub)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
    Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)
        ' Fires when the session is started
 
        Dim logon As String = Request.ServerVariables("AUTH_USER")
        Session("Login") = Convert.ToString(Mid(logon, InStr(1, logon, "\") + 1)).ToUpper
 
        Dim myconnection As ConnectionSQL = New ConnectionSQL(ConfigurationSettings.AppSettings("key_Conn"))
 
        'définit les valeurs du param d'entrée de ps_user
        param_nom_ps.Add("@UtilCode")               'nom du param d'entrée
        param_type_ps.Add(SqlDbType.VarChar)        'type du param d'entrée
        param_taille_ps.Add(20)                     'taille du param d'entrée
        param_src_ps.Add("UtilCode")                'nom colonne source du param d'entrée
        param_io_value_ps.Add(Mid(logon, InStr(1, logon, "\") + 1))     'valeur du param d'entrée
 
        Dim drUser As SqlDataReader = myconnection.ExecutePS("ps_user", param_nom_ps, param_type_ps, param_taille_ps, param_src_ps, param_io_value_ps)
        vide_param_ps()
 
        If Not drUser Is Nothing Then
            While drUser.Read
                Session("UtilPrenom") = drUser.Item("UtilPrenom")
                Session("UtilNom") = drUser.Item("UtilNom")
                Session("EntiteNom") = drUser.Item("EntiteNom")
                Session("id_dept") = drUser.Item("Reg")
            End While
            drUser.Close()
        End If
 
        Dim drAdmin As SqlDataReader = myconnection.ExecutePS("ps_list_admin")
        While drAdmin.Read
            If drAdmin.Item(0) = Session("Login") Then
                Session("Admin") = 1
            End If
        End While
        myconnection.CloseConnection()
 
    End Sub
Ne prêtez pas attention au code concernant la BDD, il marche bien sur les deux environnements...

Ca fait plusieurs jours que je fouille MSDN et Google sans succès.
En espérant que le problème, ou plutôt la solution parraisse évidente pour quelqu'un.