在_layouts目录中缓存图像和脚本

时间:2010-02-25 09:32:13

标签: sharepoint http caching ntlm

我正在尝试弄清楚为什么_layouts目录中的图像(或js或css)不会被IE或FF缓存。

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

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

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

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

获取/_layouts/MyApplication/Images/newProject.png HTTP / 1.1 200确定

...

缓存控制:max-age = 31536000

Last-Modified:星期二,2010年2月9日14:40:01 GMT

ETag:“5945d7c295a9ca1:3d0416”

...

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

谢谢

1 个答案:

答案 0 :(得分:0)

我不认为这与缓存有任何关系。您的图片根本无法访问。

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

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

此刻无法想到任何其他事情。