Azure上的空白页

时间:2012-04-23 17:55:17

标签: asp.net-mvc-3 azure

我有一个在Azure中运行的应用程序(试用帐户)。到目前为止,一切都很好,除了长时间的部署(10-15分钟)。

我最近完成了一次部署并得到了许多我无法追踪的奇怪错误。例如,如果我登录并因此创建了一个cookie(我使用FormsAuthentication),那么我从应用程序获得的是一个空白页面,因为,绝对没有任何内容发送到浏览器。该应用程序在ASP.NET Web开发服务器,IIS Express甚至Azure模拟器中都能正常工作!

可能是什么问题?搜索网络并没有多大帮助,只有几个不相关的问题。

4 个答案:

答案 0 :(得分:2)

我尝试登录该网站(如果我正确理解了一条评论,网址为versulo.com),并且我没有获得任何包含404状态代码的空白页。

然而,我发现还有另一个问题。您的网站似乎不恰当地实施缓存。主页面,您触发登录的页面和动态本质页面包含在页面首次加载后5分钟设置的Expires标题。这意味着,自首次加载以来,在5分钟内每次调用或重定向到该页面都将从浏览器的缓存中提供。

因此,在我登录您的应用程序后,我被重定向回主页,看起来我没有登录。如果我强制在浏览器上刷新F5,那么页面确实会显示我已登录

如果不是刷新我尝试再次登录(这是我在我的第一次试验中所做的,因为看起来登录在第一次不起作用),我收到一个错误页面,其中包含以下消息:

抱歉,服务器上出错了。 500

该页面看起来像一个应用程序错误页面,即使它显示500号码,它实际上也是通过HTTP 200提供的。

因此,虽然我不能100%确定这是否也是您所描述问题的原因,但您应该从应用程序所服务的动态页面中删除Expires标头。

答案 1 :(得分:0)

这可能是因为您将表单身份验证与多个实例相结合。你在使用多个实例吗?如果是这样的话,你可以:

答案 2 :(得分:0)

  

根本不呈现部分部分视图;

你的意思是有些网页工作得很好,但其他网页却没有?如果你能指出什么是有效的,哪些不可行的模式会更好?现在,请确保所有引用的程序集(默认.NET程序集和Windows Azure运行时除外)都将Copy Local设置为true。例如,MVC程序集被视为.NET的扩展,因此请将Copy Local设置为true。此外,您还可以尝试使用Fiddler监视请求以查看从服务器返回的内容。

最诚挚的问候,

徐明。

答案 3 :(得分:0)

您是否可以提供应用程序的链接,或者某些源代码?

当您说'空白页'时,实际返回的是404/500?

您是否检查过IIS日志,或者在代码中添加了一些跟踪信息?

您是否尝试使用其IP地址而不是域名来访问服务?