2011-04-10 44 views
2

我已經用C#開發與推廣的.asmx Web服務,我想這個部署到我的VPS擁有Windows Server 2003與IIS 6推出的Web服務(的.asmx)一個IIS 6.0

服務使用Framework 4.0運行,並且也安裝在VPS中。當我將預編譯版本上傳到VPS時,它顯示運行時錯誤

Server Error in '/' Application.

Runtime Error

Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed remotely (for security reasons). It could, however, be viewed by browsers running on the local server machine.

Details: To enable the details of this specific error message to be viewable on remote machines, please create a <customErrors> tag within a "web.config" configuration file located in the root directory of the current web application. This tag should then have its "mode" attribute set to "Off".

<!-- Web.Config Configuration File -->

<configuration> 
    <system.web> 
     <customErrors mode="Off"/> 
    </system.web> 
</configuration> 

Notes: The current error page you are seeing can be replaced by a custom error page by modifying the "defaultRedirect" attribute of the application's <customErrors> configuration tag to point to a custom error page URL.

<!-- Web.Config Configuration File -->

<configuration> 
    <system.web> 
     <customErrors mode="RemoteOnly" defaultRedirect="mycustompage.htm"/> 
    </system.web> 

任何人都可以幫助我解決這個問題嗎?

更新

Server Error in '/' Application.

Configuration Error

Description: An error occurred during the processing of a configuration file required to >service this request. Please review the specific error details below and modify your >configuration file appropriately.

Parser Error Message: Unrecognized attribute 'targetFramework'. Note that attribute names >are case-sensitive.

Source Error:

Line 26: Line 27:
Line 28: Line 29: Line 30: Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

Source File: C:\Inetpub\vhosts\akashvahini.com\httpdocs\web.config
Line: 28

Version Information: Microsoft .NET Framework Version:2.0.50727.3053; ASP.NET >Version:2.0.50727.3053

這使調試在web.config

+0

我們不能真正幫助你沒有充分的「真實」錯誤信息。按照您現在獲得的錯誤消息中的說明,更改'web.config'並使用將得到的新錯誤消息編輯您的問題。 – 2011-04-10 08:58:28

+0

現在我得到一個錯誤,說服務器應用程序不可用您嘗試訪問此Web服務器上的Web應用程序當前不可用。請點擊網頁瀏覽器中的「刷新」按鈕重試您的請求。管理員注意:可以在Web服務器的應用程序事件日誌中找到詳細描述此特定請求失敗原因的錯誤消息。請查看此日誌條目以發現導致此錯誤發生的原因。 – megazoid 2011-04-10 10:01:47

+0

當在事件日誌中選中時顯示「無法執行請求,因爲無法創建應用程序域,錯誤:0x80070005訪問被拒絕。」 – megazoid 2011-04-10 10:02:37

回答

3

您應該啓用調試診斷問題之後,新的錯誤消息。
Microsoft對如何通過here啓用詳細調試有非常詳細的解釋。

Server Error in '/' Application. 

該錯誤太泛泛,請在啓用調試併發布結果後檢查輸出。
並且不要忘記在您的網站上線後禁用調試功能。

更新
似乎是許可相關:
http://forums.iis.net/p/1042369/1454379.aspx
ASPNET用戶帳戶需要的權限包含您的ASMX服務的文件夾。

UPDATE2: 你可以給使用文件系統權限對話框ASPNET用戶權限:
http://www.asp.net/learn/whitepapers/denied-access-to-iis-directories

看起來對新版本的Windows不同。

+0

現在我收到錯誤消息說: 服務器應用程序不可用 您試圖在此Web服務器上訪問的Web應用程序當前不可用。請點擊網頁瀏覽器中的「刷新」按鈕重試您的請求。 管理員注:可以在Web服務器的應用程序事件日誌中找到詳細描述此特定請求失敗原因的錯誤消息。請查看此日誌條目以發現導致此錯誤發生的原因。 – megazoid 2011-04-10 09:53:00

+0

當在事件日誌中選中時顯示「無法執行請求,因爲無法創建應用程序域,錯誤:0x80070005訪問被拒絕。」 – megazoid 2011-04-10 09:55:02

+0

更新了我的回答 – 2011-04-10 10:15:46

2

根據我的經驗,「服務器應用程序不可用」意味着您在同一個應用程序池中使用不同版本的.net的網站。

託管您的web服務的站點需要位於僅包含.net 4.0網站的應用程序池中。應用程序池在網站屬性的主目錄選項卡上配置。

+0

必須重新安裝一些舊的Web服務(從5年前開始)。從默認應用程序池更改爲適用於舊代碼的新應用程序池 – 2015-05-27 23:29:09

2

在我看來,應用程序池試圖在.net上運行兩個差異版本。

創建一個新的應用程序池,並將其稱爲.Net4,然後移動新的站點以使用此應用程序池,並且應該可以正常工作。

此錯誤顯示爲 版本信息:Microsoft .NET Framework版本:2.0.50727.3053; ASP.NET>版本:2.0.50727.3053

凡現場用的.asmx應該說。微軟.NET Framework版本:4.0等等