2011-09-29 4 views
0

J'ai préparé mon site Web dans le studio visuel 2008 avec le kit de contrôle d'ajax et fonctionnant bien dans la machine locale.IIS 7 timeout de session fréquemment

Mon site Web est hébergé sur Windows 2008 R23 Server avec II7 Mais il perd fréquemment sa session en 30 secondes. S'il vous plaît me fournir une solution pour augmenter mon délai d'attente de session. mon web.config est comme suit:

Asp.Net Option de configuration dans Visual Studio. Une liste complète des paramètres et des commentaires se trouve dans machine.config.comments généralement situés dans \ Windows Framework \ Microsoft.Net \ \ 2.x \ Config -> section permet la configuration du mode d'authentification de sécurité utilisé par ASP.NET pour identifier un utilisateur entrant. De la section -> permet d'effectuer la configuration de quoi faire si/quand une erreur non gérée se produit pendant l'exécution d'une requête. Plus précisément, il permet aux développeurs de configurer les pages d'erreur html à afficher à la place d'une trace de pile d'erreurs.

<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm"> 
     <error statusCode="403" redirect="NoAccess.htm" /> 
     <error statusCode="404" redirect="FileNotFound.htm" /> 
    </customErrors> 
    --> 
    <customErrors mode="Off"></customErrors> 
    <pages enableViewStateMac="false" viewStateEncryptionMode="Never" enableEventValidation="false"> 
     <namespaces> 
      <clear/> 
      <add namespace="System"/> 
      <add namespace="System.Collections"/> 
      <add namespace="System.Collections.Generic"/> 
      <add namespace="System.Collections.Specialized"/> 
      <add namespace="System.Configuration"/> 
      <add namespace="System.Text"/> 
      <add namespace="System.Text.RegularExpressions"/> 
      <add namespace="System.Linq"/> 
      <add namespace="System.Xml.Linq"/> 
      <add namespace="System.Web"/> 
      <add namespace="System.Web.Caching"/> 
      <add namespace="System.Web.SessionState"/> 
      <add namespace="System.Web.Security"/> 
      <add namespace="System.Web.Profile"/> 
      <add namespace="System.Web.UI"/> 
      <add namespace="System.Web.UI.WebControls"/> 
      <add namespace="System.Web.UI.WebControls.WebParts"/> 
      <add namespace="System.Web.UI.HtmlControls"/> 
     </namespaces> 
     <controls> 
      <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
      <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
     </controls> 
    </pages> 
<sessionState mode="StateServer" cookieless="true" timeout="30"/> 
<httpRuntime executionTimeout="43200" maxRequestLength="104856" 
      enable="true" /> 
    <httpHandlers> 
     <remove path="*.asmx" verb="*"/> 
     <add path="*.asmx" verb="*" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/> 
     <add path="*_AppService.axd" verb="*" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/> 
     <add path="ScriptResource.axd" verb="GET,HEAD" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/> 
     <add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" validate="false"/> 
    </httpHandlers> 
    <httpModules> 
     <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
    </httpModules> 
</system.web> 
<system.codedom> 
    <compilers> 
     <compiler language="c#;cs;csharp" extension=".cs" warningLevel="4" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> 
      <providerOption name="CompilerVersion" value="v3.5"/> 
      <providerOption name="WarnAsError" value="false"/> 
     </compiler> 
     <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" warningLevel="4" type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> 
      <providerOption name="CompilerVersion" value="v3.5"/> 
      <providerOption name="OptionInfer" value="true"/> 
      <providerOption name="WarnAsError" value="false"/> 
     </compiler> 
    </compilers> 
</system.codedom> 
<!-- 
    The system.webServer section is required for running ASP.NET AJAX under Internet 
    Information Services 7.0. It is not necessary for previous version of IIS. 
--> 
<system.webServer> 
    <validation validateIntegratedModeConfiguration="false"/> 
    <modules> 
     <remove name="ScriptModule"/> 
     <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
    </modules> 
    <handlers> 
     <remove name="WebServiceHandlerFactory-Integrated"/> 
     <remove name="ScriptHandlerFactory"/> 
     <remove name="ScriptHandlerFactoryAppServices"/> 
     <remove name="ScriptResource"/> 
     <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
     <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
     <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
     <add name="Reserved-ReportViewerWebControl-axd" path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler" resourceType="Unspecified"/> 
    </handlers> 
</system.webServer> 
<runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
      <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35"/> 
      <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/> 
     </dependentAssembly> 
     <dependentAssembly> 
      <assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35"/> 
      <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/> 
     </dependentAssembly> 
    </assemblyBinding> 
</runtime> 

Merci à l'avance chandu

Répondre

1

Je pense que vous avez défini le session time out-30 dans votre fichier web.config.

<sessionstate 
    timeout="required no of minutes" 
/> 

Ici vous pouvez définir le temps que vous avez besoin du session être le temps. Ce ASP.NET Session State vous donnera une meilleure idée.

+0

Les sessions données par l'équipe d'hébergement sont en mode 'serveur d'état'. je me suis imaginé. mais tout en exécutant la page le départ avec en 30 secondes .. – user970681

+0

vous pouvez essayer Session.Timeout dans le code backend –

+0

le délai d'attente est en minutes, pas secondes, donc au-dessus c'est 30mins. Le fait qu'il utilise stateserver n'affecte pas le délai d'attente au sein de votre application. Vous utilisez cookieless, alors assurez-vous que la chaîne magique est incluse dans le chemin. Sans cela, vous ne pouvez pas vous reconnecter à la session. –