當發佈到Azure中的登臺服務器時,我遇到了一個奇怪的問題。在此部署中,我有一個使用SQL成員身份的Web應用程序。當我嘗試通過登錄頁面登錄時,我被重定向回登錄頁面。這是一個.NET 4.0應用程序。Asp.net Forms身份驗證Cookie問題
使用Firebug的網絡面板我可以看到,當我點擊回車時,表單被髮布,響應頭部有一個set-cookie屬性用於我的身份驗證票證。它顯示了兩次。
.ASPXAUTHTEST=27D254F0AEEACB.........; domain=cloudapp.net; expires=Thu, 05-Jun-2014 05:29:24 GMT; path=/; HttpOnly
當表單發佈時,cookie被設置,我在Firebug中看到我重定向到了默認URL。當我點擊默認網址時,cookie不存在,因此我立即註銷。
這是我正在使用的配置。
<authentication mode="Forms">
<forms cookieless="UseCookies" enableCrossAppRedirects="false" loginUrl="~/Default.aspx" name=".ASPXAUTHTEST" slidingExpiration="true"
timeout="360" requireSSL="true" defaultUrl="~/Application/Index.aspx" protection="All" path="/" domain="cloudapp.net"/>
</authentication>
奇怪的是,我在生產中有相同的部署,它工作正常。我試過再次重新部署整個實例(新VM等)。這沒有奏效。我也嘗試部署到一個新的操作系統版本的思維,但沒有奏效。
我已經添加了一些日誌代碼來查看正在發生的事情,但它使我得出與Firebug相同的結論,cookie未在瀏覽器中設置。這不是瀏覽器相關的,因爲我已經嘗試過Chrome和IE。
我最近從Azure SDK 1.6升級到2.1。
有沒有人有任何建議?
是您的登錄網址也是您的default.aspx? 'loginUrl =「〜/ Default.aspx」' –
是域名真正的「cloudapp.net」,並且是您的SSL域名? – viperguynaz
我的default.aspx頁面也是我的loginUrl。分段的域是cloudapp.net(Azure的默認域)。沒有任何運氣,我嘗試了對於requireSSL的真實和錯誤。 – Brownman98