2013-04-28 46 views
1

如果我把web角色在IIS中運行,服務將按預期運行。但是,它在azure模擬器中不起作用。錯誤頁面顯示「500 - 內部服務器錯誤。您正在查找的資源存在問題,並且無法顯示。」基於ssl的wcf服務在azure模擬器中不起作用

我懷疑它是由下面的設置引起的:

<system.webServer> 
     <security> 
      <access sslFlags="Ssl, SslNegotiateCert, SslRequireCert" /> 
     </security> 
</system.webServer> 

但我已經成立了一個啓動任務如下天藍:

<WebRole name="WCFServiceWebRole" vmsize="ExtraSmall"> 
    <Startup> 
     <Task commandLine="startup\unlockSession.cmd" executionContext="elevated" /> 
    </Startup> 
</WebRole> 

,其內容爲:

%windir%\ system32 \ inetsrv \ appcmd unlock config /section:system.webServer/security/access

任何人都遇到同樣的問題?幫幫我!

在此先感謝!

+0

這很可能不是您的啓動腳本導致的問題 - 通常問題導致角色甚至無法啓動。但是這裏沒有足夠的信息來說明問題實際上是什麼。查看事件日誌,在WebRole.cs和/或Global.asax應用程序錯誤處理程序中設置斷點,並且通常嘗試收集更多信息。您也可以檢查web.config中的錯誤 - 這是此問題的常見原因。 – 2013-04-28 15:18:23

回答

0

是否啓用SSL端點服務定義文件,如下

<Endpoints> 
     <InputEndpoint name="Endpoint1" protocol="https" port="443" certificate="SSLcertificate" /> 
    </Endpoints> <Certificates> 
     <Certificate name="SSLcertificate" storeLocation="LocalMachine" storeName="My" /> 
    </Certificates> 
0

也許這是因爲你的模擬器使用IIS表達,而不是完整的IIS。在appcmd的情況下會有另一條路徑:C:\Program Files\IIS Express\appcmd.exe

但更正確和完整的解決方案,請參閱此question