我在Windows Azure平台上遇到了一个相当老的错误(2009年之前),真的很难过。简而言之,在部署到Azure之后,我获得了通过 WebResource.axd 加载的JavaScript资源的HTTP 404响应。这是一个大问题,因为它打破了网站上的大部分AJAX功能。有趣的是,部署后大约2小时内事情变得正常,404资源开始正常加载。事件更有趣的部分是每次部署后都不会发生404错误。
经过大量Google搜索后,我在Azure论坛上找到了similar case。 Yi-Lun Luo的最后一篇文章让我觉得我的案例中的问题与他描述的错误有关。也许我错了,但似乎在404错误停止的2小时与我的时区为UTC +2之间存在联系。
如果有人遇到类似问题或有解决方法的想法,请告诉我。我真的很感激!
答案 0 :(得分:3)
我们之前已经遇到过另一个项目。它实际上根本不是Azure问题,而是WebResource.axd如何加载程序集的错误(粗略地说)。问题与时区有关。如果您正在构建和部署的二进制文件位于时区的“时间区域”之前,那么您将运行代码,那么您将遇到所遇到的问题。我们在处理来自Telerik的控件时特别遇到了这个问题。我们联系Telerik寻求帮助,他们对thier site.
提出了一些建议基本上,您需要“触摸”您构建的程序集,以便上次修改日期是UTC当前时间之前的时间。该链接使用此语法(注意逗号很重要):
copy / b<将来构建的程序集的路径> + ,,
构建服务器位于东部时区,生产服务器位于中央时区。我们将二进制文件复制到生产框并对它们执行上面的命令。您可以使用启动任务在Azure中模仿这个,这应该可以解决问题。