0

我是一家大型电视台的网络人。我们的网站由 Akamai 缓存。页面在我们的测试环境(未缓存)和我们的“原始”页面(同样,未缓存)中完美呈现,但是当它们在我们的实时环境(缓存站点)上查看时,它们的呈现方式与我的方式并不完全相同对它们进行编码。也许是一点点间距,也许是 CSS 元素(尤其是背景)没有显示,最糟糕的是,忘记所有关于浮动 DIV 的事情。由于无法浮动,我必须做多少表设计,这太疯狂了。

有没有其他人有这样的缓存经验?有没有可以用来查看渲染变化的工具?

我没有人可以寻求支持,因为公司不相信问题存在。如果可以,请提供帮助。

该站点建立在我无法访问的 VB.Net 后端上。我只能访问前端。

4

4 回答 4

5

我一直在 Akamai 背后的网站上工作,老实说他们不会弄乱您的代码,所以这不是问题。它很可能是以下之一:

您遇到了缓存延迟问题- 您更新了 html 和 css,其中一个已更新,而另一个仍由 Akamai 缓存或使用时间戳来增加相关文件。这里有几种解决方案,包括确保通过 Akamai 的控制面板清除缓存以及更多编程方式的编码。标题也可以使用,但不是真正的首选方式。

绝对 URL - 在多个环境中进行测试时最好使用相对 URL,以确保您将所有内容都指向同一个环境。

这绝对是环境问题,而不是 Akamai 问题。

于 2009-04-07T13:14:04.377 回答
2

样式表、Javascript 文件等是否都从 Akamai 正确加载?

您能否保存直接从“源”服务器检索到的页面副本和使用 Akamai 保存的副本,然后使用 diff 查找更改?

而且,最重要的是,您是否向 Akamai 询问过此事?这不是一个真正的编程问题:)

于 2008-09-15T17:44:21.797 回答
1

从开发中下载所有文件作为静态文件,然后从生产中下载。并使用 WinMerge 之类的工具来查看差异。

如果您使用 CTRL-F5 刷新浏览器,这个问题也会消失吗?

于 2008-09-15T17:44:08.130 回答
0

也许 Akamaia 没有看到 HTML 代码中 <link /> 的 CSS 文件的更新版本?在 URL 中嵌入版本号可能是个好主意,这样当您发布 HTML 的更新版本时,它总是会向 Akamai 询问 CSS 的新版本(我想这也适用于图像)。

从理论上讲,Akamai 应该识别您的 Web 服务器发送的更新的缓存标头,但我从来没有从事过不需要采取一些对策来确保我们可以强制 Akamai 刷新其缓存版本的工作。

于 2008-09-15T17:46:57.593 回答