none
IIS 7 放.Net網頁

    問題

  • 我用 vs 2008 寫了一個網頁

    當中有使用到 Linq To SQL 類別 也有用到 WebUserControl

    但當放到IIS7上時

    瀏覽頁面會出現錯誤訊息

    描述: 在執行目前 Web 要求的過程中發生未處理的例外情形。請檢閱堆疊追蹤以取得錯誤的詳細資訊,以及在程式碼中產生的位置。

    例外詳細資訊: System.Web.HttpException: 無法載入型別 'SampleDCDataContext'。

    '/' 應用程式中發生伺服器錯誤。

    無法載入型別 'SampleDCDataContext'。

     

     

    SampleDC是我的LinQ To SQL 的類別名稱

     

    另外一個頁面的錯誤如下:

    描述: 當剖析服務此要求所需的資源時發生錯誤。請檢閱下列的特定剖析錯誤詳細資訊,並且適當地修改您的原始程式檔。

    剖析器錯誤訊息: 檔案 '/UC_Date.ascx' 不存在。

    原始程式錯誤:

    行 1: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Act_edit_Test0916.aspx.cs" Inherits="_Default" %>
    行 2: <%@ Register Src="~/UC_Date.ascx" TagName="Date" TagPrefix="UC" %>
    行 3: 
    行 4: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    '/' 應用程式中發生伺服器錯誤。

    剖析器錯誤

     

     

    但是在VS上跑都是OK的 檔案也在

    我有試過用一個簡單的 aspx網頁 (上面只有文字)

    在IIS7上跑 是可以跑的

    但當加了 LinQ To SQL 類別之後就會出錯

    請問到底是哪裡出問題了

    P.S. 作業系統是Win 7

    2010年9月21日 上午 06:20

解答

所有回覆

  • 你有用部署的方式嗎? 還是直接複製檔案丟上去?

     

    2010年9月21日 上午 06:31
  • 你的根目錄確定有這個ascx檔案嗎?
    2010年9月21日 上午 06:33
    版主
  • 部屬是指 新增虛擬目錄 這個嗎

    我是用複製檔案的方式在去該位置 瀏覽頁面

    我剛剛有用新增虛擬目錄的方式操作

    出現...

    伺服器錯誤

    Internet Information Services 7.5

    <fieldset><legend>錯誤摘要</legend>

    HTTP 錯誤 500.19 - Internal Server Error

    無法存取要求的網頁,因為與該網頁相關的設定資料不正確。

    </fieldset>
    <fieldset><legend>詳細錯誤資訊</legend>
    模組 IIS Web Core
    通知 BeginRequest
    處理常式 尚未判定
    錯誤碼 0x80070005
    設定錯誤 無法讀取設定檔案,因為權限不足
    設定檔案 \\?\C:\Users\bsp\Desktop\WebSite6\web.config
    要求的 URL http://localhost:80/Test/Default.aspx
    實體路徑 C:\Users\bsp\Desktop\WebSite6\Default.aspx
    登入方法 尚未判定
    登入使用者 尚未判定
    </fieldset>
    <fieldset><legend>設定來源</legend>
      -1: 
      0: 
    
    </fieldset>
    <fieldset><legend>連結及其他資訊</legend>如果讀取網頁伺服器或 Web 應用程式的設定檔案發生問題,此時就會發生這種錯誤。在某些情況下,事件記錄可能會包含何種原因造成這項錯誤的詳細資訊。

    檢視其他資訊 »

    </fieldset>

    難道是我IIS有問題嗎

    可是本來IIS上面本身就存在一些網頁是可以跑的

    不過不是我放的 也沒人可以問 囧

     

    2010年9月21日 上午 07:20
  •  

    我的檔案都確定在

    而且用vs 2008可以順利跑沒問題

    2010年9月21日 上午 07:21
  • 把這個目錄的讀取權開給IIS的執行帳號

    C:\Users\bsp\Desktop\WebSite6

    2010年9月21日 上午 07:37
    版主
    • 已標示為解答 爆爆 2010年9月21日 上午 11:20
    • 已編輯 DK. Da 2012年6月10日 上午 01:07
    2010年9月21日 上午 09:51
  •  

    應該就是這個問題沒錯

    回家了沒有IIS7 可以測試

    禮拜四再來測試

    感謝各位大人解答 :D

    2010年9月21日 上午 11:20
  • 您好 爆爆 ,

    請問您的狀況有解除了嗎~?

    如果有的話就將解決方式貼出來分享一下吧~

    謝謝~~~



    Best regards
    • 已編輯 DK. Da 2012年6月10日 上午 01:07
    2010年9月23日 下午 11:23
  • 我按照您的網頁去操作

    先增加一個新的應用程式集區

    然後在把網站新增的虛擬目錄權限都給 IIS AppPool\Test  (Test 是我的應用程式集)

    並且也另外給了Authenticated Users 群組給我的虛擬目錄

    權限的問題解決了

    但當應用程式的 .Net FrameWork 是2.0時

    有用到 LINQ TO SQL 的 網頁或是用到webusercontrol的網頁都會出錯

    我想應該是 .Net FrameWork版本問題於是我換成 4.0

    結果每個網頁都開不起來了 畫面如下

    應用程式 "ASPTEST" 中有伺服器錯誤

    Internet Information Services 7.5

    <fieldset><legend>錯誤摘要</legend>

    HTTP 錯誤 404.17 - Not Found

    要求的內容似乎是指令碼,因此靜態檔案處理常式便不會對它進行處理。

    </fieldset>
    <fieldset><legend>詳細錯誤資訊</legend>
    模組 StaticFileModule
    通知 ExecuteRequestHandler
    處理常式 StaticFile
    錯誤碼 0x80070032
    要求的 URL http://192.168.1.33:1999/Test1/Act_billboard.aspx
    實體路徑 C:\Users\bsp\Desktop\WebSite2\Act_billboard.aspx
    登入方法 匿名
    登入使用者 匿名
    </fieldset>

     

    查一下網頁好像要設定 "處理常式設定" 可是我不知道怎麼設定參數

     

    2010年9月24日 上午 09:45
  • 您好 爆爆,

    或許您可以降到 3.5 看看,

    因為 4.0 跟 3.5 差異比較大,

    而且 4.0 會在專案中加幾支檔案,

    沒有那幾支就不能 run 了...



    Best regards

    • 已編輯 DK. Da 2012年6月10日 上午 01:07
    2010年9月24日 上午 11:07
  • 因為它只有 2.0 跟 4.0 可以選 還有另外一個選項我忘記選項名字但是應該不會是選那個

     

    2010年9月24日 上午 11:10
  • 您好 爆爆,

    IIS 一樣選 2.0 即可,

    但站台實體專案檔用的要選為 3.5,

    您可以在 VS 裡面調整這一點~~~

    在該站台方案上面點右鍵,選「屬性頁」,

    點一下「建置」項目,然後將「目標 Framework」選為 .NET Framework 3.5~



    Best regards

    • 已編輯 DK. Da 2012年6月10日 上午 01:08
    2010年9月24日 下午 12:05
  • 你可以試著重新去註冊ASP

    到你的ASP版本裡面

    執行 aspnet_regiis.exe -i

    2010年10月12日 上午 09:35