![](/img/trans.png)
[英]how to get Application_Start (in Global.asax.cs) to be called before requests in asmx web service on IIS 6.0
[英]launching a web service (.asmx) in a IIS 6.0
我已經使用C#開發了一個擴展名為.asmx的Web服務,並且希望將此服務部署到具有IIS 6的Windows Server 2003的VPS中。
服務與Framework 4.0一起運行,並且也安裝在VPS中。 當我將預編譯的版本上傳到VPS時,顯示運行時錯誤
'/'應用程序中的服務器錯誤。
運行時錯誤
說明:服務器上發生應用程序錯誤。 該應用程序的當前自定義錯誤設置阻止應用程序錯誤的詳細信息被遠程查看(出於安全原因)。 但是,可以由運行在本地服務器計算機上的瀏覽器查看它。
詳細信息:若要使此特定錯誤消息的詳細信息在遠程計算機上可見,請在當前Web應用程序根目錄中的“ web.config”配置文件中創建一個
<customErrors>
標記。 然后,此標記應將其“mode”屬性設置為“Off”。
<!-- Web.Config Configuration File -->
<configuration> <system.web> <customErrors mode="Off"/> </system.web> </configuration>
注意:通過修改應用程序
<customErrors>
配置標記的“ defaultRedirect”屬性以指向自定義錯誤頁面URL,可以將當前看到的錯誤頁面替換為自定義錯誤頁面。
<!-- Web.Config Configuration File -->
<configuration> <system.web> <customErrors mode="RemoteOnly" defaultRedirect="mycustompage.htm"/> </system.web>
誰可以幫我這個事?
更新
'/'應用程序中的服務器錯誤。
配置錯誤
說明:在處理服務於此請求所需的配置文件期間發生錯誤。 請查看下面的特定錯誤詳細信息,並適當修改>配置文件。
解析器錯誤消息:無法識別的屬性'targetFramework'。 請注意,屬性名稱>區分大小寫。
來源錯誤:
第26行:第27行:
第28行:第29行:第30行:文化=中性,PublicKeyToken = 31BF3856AD364E35“ />源文件:C:\\ Inetpub \\ vhosts \\ akashvahini.com \\ httpdocs \\ web.config
行:28版本信息:Microsoft .NET Framework版本:2.0.50727.3053; ASP.NET>版本:2.0.50727.3053
這是在web.config中啟用調試后的新錯誤消息
您應該啟用調試以診斷問題。
Microsoft對如何在此處啟用詳細調試有非常詳細的說明。
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上可能看起來有所不同。
根據我的經驗,“服務器應用程序不可用”表示您在同一應用程序池中擁有使用不同版本的.net的網站。
托管Web服務的站點必須位於僅具有.net 4.0網站的應用程序池中。 在網站屬性的“主目錄”選項卡上配置應用程序池。
在我看來,應用程序池正在嘗試在.net上運行兩個不同的版本。
創建一個新的應用程序池,並將其命名為.Net4之類的名稱,然后將新站點移至另一個位置以使用該應用程序池,並且一切正常。
版本信息顯示此錯誤:Microsoft .NET Framework版本:2.0.50727.3053; ASP.NET>版本:2.0.50727.3053
帶有.asmx的網站應顯示.Microsoft .NET Framework版本:4.0等...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.