Công cụ bảo vệ mã nguồn .NET mạnh nhất, không thể unpack, miễn phí cho các khách hàng đầu tiên đăng ký.
Từ 1 tới 5 trên tổng số 5 kết quả

Đề tài: Lỗi Session state can only be used when enableSessionState is set to true khi sử dụng url rewrite ??

  1. #1
    Ngày gia nhập
    08 2010
    Bài viết
    44

    Question Lỗi Session state can only be used when enableSessionState is set to true khi sử dụng url rewrite ??

    Như tiêu đề , lúc mình không sử dụng Url Rewrite thì Session chạy bình thường, nhưng khi sử dụng Url Rewrite thì nó bị lỗi này:
    Session state can only be used when enableSessionState is set to true, either in a configuration file or in the Page directive. Please also make sure that System.Web.SessionStateModule or a custom session state module is included in the <configuration>\<system.web>\<httpModules> section in the application configuration.

    Mình đã tìm cách giải quyết trên mạng và thấy đa số là hướng dẫn như thế này và mình đã làm theo nhưng không được :

    Add thêm đoạn này:
    Code:
    <pages enableSessionState="true">
    và đaọn này :
    Code:
    <add name="Session" type="System.Web.SessionState.SessionStateModule"  />
    trong <httpModules>
    và đây là web.config của mình:
    Code:
    <?xml version="1.0"?>
    <!-- 
        Note: As an alternative to hand editing this file you can use the 
        web admin tool to configure settings for your application. Use
        the Website->Asp.Net Configuration option in Visual Studio.
        A full list of settings and comments can be found in 
        machine.config.comments usually located in 
        \Windows\Microsoft.Net\Framework\v2.x\Config 
    -->
    <configuration>
    	<configSections>
    		<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    			<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    				<section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
    				<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    					<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere"/>
    					<section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
    					<section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
    					<section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
    				</sectionGroup>
    			</sectionGroup>
    		</sectionGroup>
    		<section name="urlrewritingnet" requirePermission="false" type="UrlRewritingNet.Configuration.UrlRewriteSection, UrlRewritingNet.UrlRewriter"/>
    	</configSections>
    	<urlrewritingnet rewriteOnlyVirtualUrls="true" contextItemsPrefix="QueryString" defaultProvider="RegEx" xmlns="http://www.urlrewriting.net/schemas/config/2006/07">
    		<rewrites>
    
          <add name="RewriteSubCate" virtualUrl="^~/(.*)_(.*)/(.*)_(.*)"
               rewriteUrlParameter="ExcludeFromClientQueryString"
               destinationUrl="/Category.aspx?MainCateID=$1&amp;MainCateName=$2&amp;SubCateID=$3&amp;SubCateName=$4"
               ignoreCase="true"/>
          <add name="RewriteDetailNews" virtualUrl="^~/(.*)/(.*)/(.*).html"
              rewriteUrlParameter="ExcludeFromClientQueryString"
              destinationUrl="/NewsDetail.aspx?SubCatID=$1&amp;DetailID=$2&amp;Title=$3"
              ignoreCase="true"/>
          <add name="RewriteMainCate" virtualUrl="^~/category/(.*)_(.*)" 
               rewriteUrlParameter="ExcludeFromClientQueryString" 
               destinationUrl="/Category.aspx?MainCateID=$1&amp;MainCateName=$2" 
               ignoreCase="true"/>
          <add name="RewriteTag" virtualUrl="^~/Tag/(.*)"
               rewriteUrlParameter="ExcludeFromClientQueryString"
               destinationUrl="/Tag.aspx?TagName=$1"
               ignoreCase="true"/>
    		</rewrites>
    	</urlrewritingnet>
    	<appSettings/>
    	<connectionStrings>
    		<add name="blogresazipConnectionString" connectionString="server=USER-PC\SQLEXPRESS;database=blogresazip;trusted_connection=true"/>
        <add name="Subtitle" connectionString="Resazip.somee.com-học hỏi chia sẻ phát triển"/>
      </connectionStrings>
    	<system.web>
    		<!-- 
                Set compilation debug="true" to insert debugging 
                symbols into the compiled page. Because this 
                affects performance, set this value to true only 
                during development.
            -->
    		<compilation debug="true">
    			<assemblies>
    				<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    				<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    				<add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    				<add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    			</assemblies>
    		</compilation>
    		<!--
                The <authentication> section enables configuration 
                of the security authentication mode used by 
                ASP.NET to identify an incoming user. 
            -->
    		<authentication mode="Windows"/>
    		<!--
                The <customErrors> section enables configuration 
                of what to do if/when an unhandled error occurs 
                during the execution of a request. Specifically, 
                it enables developers to configure html error pages 
                to be displayed in place of a error stack trace.
    
            <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
                <error statusCode="403" redirect="NoAccess.htm" />
                <error statusCode="404" redirect="FileNotFound.htm" />
            </customErrors>
            -->
    		<pages enableSessionState="true">
    			<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>
    		<httpHandlers>
    			<remove verb="*" path="*.asmx"/>
    			<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    			<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    			<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/>
    		</httpHandlers>
    		<httpModules>
                            <add name="Session" type="System.Web.SessionState.SessionStateModule"  />
                            <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    			<add name="UrlRewriteModule" type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter"/>      
                   </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"/>
    			<remove name="UrlRewriteModule"/>
    			<add name="UrlRewriteModule" type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter"/>
    			<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"/>
    		</handlers>
    		<directoryBrowse enabled="true"/>
    		<defaultDocument>
    			<files>
    				<add value="Home.aspx"/>
    			</files>
    		</defaultDocument>
    	</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>
    </configuration>
    Mong các bạn, anh/chị hướng dẫn. Thanks
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.
    Đã được chỉnh sửa lần cuối bởi resazip : 17-11-2012 lúc 01:03 PM.

  2. #2
    Ngày gia nhập
    05 2011
    Bài viết
    36

    bỏ <clear/> đi bạn, web.config nhìn rối quá

  3. #3
    Ngày gia nhập
    08 2010
    Bài viết
    44

    Trích dẫn Nguyên bản được gửi bởi toanzoom Xem bài viết
    bỏ <clear/> đi bạn, web.config nhìn rối quá
    Mình đã bỏ rồi nhưng không được bạn ơi

  4. #4
    Ngày gia nhập
    05 2011
    Bài viết
    36

    thêm cái remove session vào
    Code:
    <modules>
          <!--<add name="IntranetPageHttpModule" type="RewriteUrl" />-->
          <add name="UrlRewriteModule" type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter"/>
          <remove name="Session" /> <!--Thêm cái này-->
          <add name="Session" type="System.Web.SessionState.SessionStateModule" />
    </modules>
    cái config cho iis 7 hơi khác iis6 một tí

  5. #5
    Ngày gia nhập
    08 2010
    Bài viết
    44

    Trích dẫn Nguyên bản được gửi bởi toanzoom Xem bài viết
    thêm cái remove session vào
    Code:
    <modules>
          <!--<add name="IntranetPageHttpModule" type="RewriteUrl" />-->
          <add name="UrlRewriteModule" type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter"/>
          <remove name="Session" /> <!--Thêm cái này-->
          <modules>
    </modules>
    cái config cho iis 7 hơi khác iis6 một tí
    Thanks bạn đã chạy OK rồi ^^, ngoài cái <remove> thì mình thêm dòng <add name="Session" type="System.Web.SessionState.SessionStateModule" /> nữa vào <modules> mới chạy, chứ lúc đầu trong cái <modules> mình chưa add dòng này , mà mới add vào <httpModules> ^^.
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.

Các đề tài tương tự

  1. Khai báo biến Session trong Class.cs lỗi 'The name 'Session' does not exist in the current context'?
    Gửi bởi nguyenvantien87 trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 5
    Bài viết cuối: 26-12-2012, 06:56 PM
  2. Sự khác nhau giữa HttpContext.Current.Session và Session là như thế nào?
    Gửi bởi thvnhn trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 30-08-2012, 10:38 AM
  3. Thắc mắc vấn đề về enableSessionState trong web.config
    Gửi bởi caocanha trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 10
    Bài viết cuối: 10-01-2012, 04:40 PM
  4. Cache, Cookie, Session, View State là gì, sự khác nhau giữa chúng ra sao?
    Gửi bởi canloimat87 trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 6
    Bài viết cuối: 24-04-2011, 09:20 AM
  5. Lockerz.com - True or False =>True
    Gửi bởi luboquanvu trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 1
    Bài viết cuối: 24-12-2009, 08:50 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn