none
asp.net 從IIS6 移到 IIS7後出現錯誤! RRS feed

所有回覆

  • 可以把customErrors mode設為Off,看看是哪行程式沒有被實體化。
    以上說明若有錯誤請指教,謝謝。
    http://www.dotblogs.com.tw/terrychuang/
    2011年4月28日 上午 03:29
  • 檢查一下您LoginButton的click裡面的程式,哪一個東西null了。

    基本上如果原本的環境跑起來沒問題,換到win2008+IIS7上才有問題,那就是環境設定的問題了。

    然後程式碼裡面沒有檢查NullReference。

    最簡單的方式,當然還是偵錯啦,看到底掛在哪一行。看什麼東西跟您的SFC3.login有關,因為最後就是掛在SFC3.login這個object囉。


    常用資源參考:
    小弟的blog: In 91,wiki: my wiki
    2011年4月28日 上午 03:56
    版主
  • Hi Glaziz.Chen 您好:

    請您先參考 Terry 的建議,先將web.config 錯誤資訊的顯示打開,才能知道詳細的錯誤原因,提供給您修改設定的參考文件。

    如果在回呼時用戶端上發生例外狀況,則指定 <tt><customErrors mode="Off"/></tt> 會使伺服器接收完整的例外狀況資訊,包括堆疊追蹤。
    http://msdn.microsoft.com/zh-tw/library/y123fsf7(v=vs.80).aspx 


    如何收到討論通知的email通知:

    當你們登入論壇時若在畫面右方有出現以下圖片, 請點選"Click Here " , 並依照步驟填寫正確的email帳號, 才能正確地收到論壇通知郵件!

    2011年4月28日 上午 08:05
    版主
  • 感謝三位的解答

    檢查我的web.config之後,發現我已經將customErrors mode設為off了

    再貼一次我的錯誤訊息為http://photo.xuite.net/glaziz/4856480/2.jpg

    而我的web.config內容為下述

    <?xml version="1.0" encoding="UTF-8"?>
    <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>
     </configSections>
      <appSettings>
        <add key="ConnStr" value="Data Source=TWOR1;User Id=SFC3;Password=SFC3SYS;Persist Security Info=True" />
        <add key="biConnStr" value="Data Source=TWOR1;User Id=plm;Password=plmsys;Persist Security Info=True" />
        <add key="Domain" value="wus.com.tw" />
        <add key="rootPath" value="" />
      </appSettings>
      <connectionStrings>
        <add name="ConnStr" connectionString="Data Source=TWOR3;Persist Security Info=True;User ID=SFC3;Password=SFC3SYS;Unicode=True" providerName="System.Data.OracleClient" />
      </connectionStrings>
     <system.web>
      <!--
                設定 compilation debug="true" 會將偵錯
                符號插入編譯過的頁面。因為這樣會
                影響效能,所以只有在開發期間才能將
                這個值設定為 true。
            -->
      <compilation debug="true">
       <assemblies>
        <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
        <add assembly="System.Data.DataSetExtensions, 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.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
       </assemblies>
      </compilation>
      <!--
                <authentication> 區段可以用來設定 ASP.NET
                使用的安全性驗證模式,以識別連入的
                使用者。
            -->
        <authentication mode="Forms">
          <forms loginUrl="login.aspx" timeout="60" path="/"></forms>
        </authentication>
        <authorization>
          <deny users="?" />
          <allow users="*" />
        </authorization>
      <!--<authentication mode="Windows"/>
      
                <customErrors> 區段可以用來設定
                在執行要求期間發生未處理
                錯誤時所要執行的動作。具體來說,
                它可以讓開發人員設定要顯示的 HTML 錯誤網頁,
                以取代錯誤堆疊追蹤。

            <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
                <error statusCode="403" redirect="NoAccess.htm" />
                <error statusCode="404" redirect="FileNotFound.htm" />
            </customErrors>
            -->
        <customErrors mode="Off" />
      <pages>
       <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="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
      </httpModules>
            <identity impersonate="false" />
            <roleManager enabled="true" />
     </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>
      </compilers>
     </system.codedom>
     <!--
            需要 system.webServer 區段才能在 Internet Information Services 7.0 下
            執行 ASP.NET AJAX。舊版的 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>
            <defaultDocument>
                <files>
                    <clear />
                    <add value="default.aspx" />
                    <add value="Default.htm" />
                    <add value="Default.asp" />
                    <add value="index.htm" />
                    <add value="index.html" />
                    <add value="iisstart.htm" />
                </files>
            </defaultDocument>
            <handlers accessPolicy="Read, Execute, Script">
                <add name="wus2" path="*" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="None" preCondition="classicMode,runtimeVersionv2.0,bitness64" />
                <add name="wus" path="*" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="None" preCondition="classicMode,runtimeVersionv2.0,bitness32" />
            </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>
    </configuration>

    2011年4月28日 上午 08:38
  • 看錯誤訊息是掛在sfc3.login.TryAuthenticate程序中, 所以您可以對網頁執行偵錯, 進入sfc3.login.TryAuthenticate, 觀察到底是那一行程式執行發生錯誤的
    2011年4月28日 上午 08:43
  • 可否告知該如何對網頁進行偵錯?

    另外,這是我的個人想法:因為該網站目前跑在IIS6是沒有問題的,應該程式碼也沒有問題才對,我目前把該網站內容複製一份道win2k8上面,

    裝上IIS7,所以猜想是我的IIS7設定問題。是少裝了那個軟體還是應該要開放哪些權限...

    小弟不才懇請賜教~

    2011年4月28日 上午 09:09
  • 會不會是 sfc3 .dll  需要特別處哩 ?
    請關心你的發問 ^_^
    2011年4月28日 上午 10:36
  • 看看549行連到外部的認證有問題? 
    請關心你的發問 ^_^
    2011年4月28日 上午 10:37