使用SSL运行的应用程序在首次访问时未加载所有脚本/ CSS

时间:2011-01-11 12:03:49

标签: javascript .net model-view-controller ssl

希望这不是一个棘手的问题。我有一个网页应用程序没有加载第一次访问上的所有javascript / css /图像。第二次访问很好。

大约 2分钟无活动后,问题再次出现。

这些问题仅在客户请求将SSL应用于应用程序之后才开始出现

尽管所有javascript元素的页面加载成功,但Ajax请求在活动2分钟后仍停止工作。

应用程序超时为30分钟 - 就像我说的那样,在应用SSL之前一切正常。

所有javascript和CSS文件都使用绝对网址 - 例如https://blablabla

对于某些文件未加载的原因,似乎有无模式。 firebug Net输出显示失败元素的状态为'Aborted'。例如,site.css和nav.css位于同一个文件夹中,在head标签中相互声明,但是一个已加载而另一个未加载。刷新页面后两者都会正常加载(除非大约两分钟过去)。

Ajax请求也会在两分钟后显示为已中止。但是,如果我再次执行请求,Ajax请求将成功。几乎就好像第一个请求醒了一样。

Chrome中没有出现这些问题

有什么想法吗? :)

仅供参考这是一个在IIS7下运行的.Net 4 C#MVC应用程序,但由于它在Chrome中运行,我不确定它的相关性。在应用SSL之前,一切正常。

1 个答案:

答案 0 :(得分:0)

使用[RequireHttps]全面删除SSL并使用安全的操作方法。然后将主文件中的脚本和CSS更改为指向绝对HTTP URL。然后Javascript修复了ajax。

如果有人知道为什么CSS / Javascript会破坏SSL,那就太酷了。我猜它可能是工作负荷?因为它第二次工作我猜测一半的CSS和脚本被缓存,而不是通过SSL减少工作量?

无论如何,现在正在工作!