我已将OutputCache设置为在我的ASP.net ASPX页面中包含'VaryByContentEncodings =“gzip”'。我希望页面提供不同的css文件,如果浏览器支持它则进行gzip压缩,如果浏览器不支持压缩则需要常规非压缩文件。
示例:
<%@ OutputCache Duration="320" VaryByParam="none" VaryByContentEncodings="gzip" %>
当我运行代码时,我收到以下错误:
页面中的'outputcache'指令不支持'varybycontentencodings'属性。
我不知道问题是什么以及为什么它不起作用。其次,你认为通过提供不同的gzip /非压缩CSS我做的是正确的。请注意,这些文件是从Amazon S3提供的,所以我不能依靠IIS或.NET引擎自动返回压缩文件。这就是我想要用来分离页面缓存版本的原因。
在这看起来似乎没问题,但它不起作用(使用ASP.NET 4.5):
http://msdn.microsoft.com/en-us/library/system.web.httpcachevarybycontentencodings.aspx
非常感谢帮助。
答案 0 :(得分:6)
有趣的错误,我只是忘记了位置属性,因此我遇到了错误。但是,Microsoft将此代码放在他们的网站上,这使我认为此代码应该按原样运行。
http://msdn.microsoft.com/en-us/library/system.web.httpcachepolicy.varybycontentencodings.aspx
答案 1 :(得分:4)
VaryByContentEncodings是在.NET Framework版本中引入的 3.5。
答案 2 :(得分:1)
我刚才有同样的问题。问题是 - Visual Studio intellisense建议您使用不正确的属性名称。正确的是“ VaryByContentEncoding ” - 最后还有“s”。
正确:
<%@ OutputCache ... VaryByContentEncodings="gzip" %>
不正确:
<security-domain name="EmpMem" cache-type="default">
<authentication>
<login-module code="UsersRoles" flag="required">
<module-option name="password-stacking" value="useFirstPass"/>
<module-option name="usersProperties" value="app-users.properties"/>
<module-option name="rolesProperties" value="app-roles.properties"/>
</login-module>
<login-module code="org.jboss.security.auth.spi.LdapExtLoginModule" flag="required">
<module-option name="password-stacking" value="useFirstPass"/>
<module-option name="java.naming.provider.url" value="ldap://ha-adds-global.xxx.com:3268"/>
<module-option name="bindDN" value="CN=prodjbsvc,OU=ServiceAccounts,OU=NOPOL,dc=eagle,dc=xxx,dc=com"/>
<module-option name="bindCredential" value="XQtU@1lc"/>
<module-option name="baseCtxDN" value="dc=eagle,dc=xxx,dc=com"/>
<module-option name="baseFilter" value="(sAMAccountName={0})"/>
<module-option name="rolesCtxDN" value="ou=COSAs,dc=eagle,dc=xxx,dc=com"/>
<module-option name="roleFilter" value="(sAMAccountName={0})"/>
<module-option name="roleAttributeID" value="memberOf"/>
<module-option name="roleAttributeIsDN" value="true"/>
<module-option name="roleNameAttributeID" value="cn"/>
<module-option name="roleRecursion" value="-1"/>
<module-option name="searchScope" value="SUBTREE_SCOPE"/>
<module-option name="allowEmptyPasswords" value="false"/>
<module-option name="java.naming.referral" value="follow"/>
</login-module>
</authentication>
</security-domain>