0

我试图弄清楚为什么 _layouts 目录中的图像(或 js 或 css)没有被 IE 或 FF 缓存。

网站集上的身份验证是 NTLM。_layouts 文件夹在 IIS 中启用了匿名访问。

如果我用 fiddler 调试之前已经加载的页面,我可以看到以下请求:

GET /_layouts/MyApplication/Images/newProject.png HTTP/1.1 401 未经授权

GET /_layouts/MyApplication/Images/newProject.png HTTP/1.1 401 未经授权

GET /_layouts/MyApplication/Images/newProject.png HTTP/1.1 200 OK

...

缓存控制:max-age=31536000

最后修改时间:2010 年 2 月 9 日星期二 14:40:01 GMT

ETag:“5945d7c295a9ca1:3d0416”

...

每次后续访问页面都会发生这种情况。你知道为什么图像没有被缓存吗?

谢谢

4

1 回答 1

0

我认为这与缓存无关。您的图像根本无法访问。

虽然理论上您的设置应该可以正常工作,但我会检查以下内容:

  • 应用程序池 - 确保您的子应用程序(“MyApplciation”)使用与 SharePoint 主站点相同的应用程序池。我之前遇到过这个问题,我找不到解决方案,所以最终分配了同一个应用程序池。
  • IIS - 如果您设置了虚拟目录/应用程序,请检查所有安全设置。我肯定会尝试删除任何虚拟目录节点,然后查看是否可以访问图像。
  • 如果您使用的是 CAS 策略,请尝试将其更改为开箱即用的配置。
  • 如果一切都失败了,请考虑将您的图像移动到 _layouts/images/ (我知道,不理想,但可能是一种解决方法)

暂时想不出别的。

于 2010-02-25T10:33:18.247 回答