我的JSF 2.2项目中有Primefaces 5.3和Omnifaces 2.3的字体文件,需要将这些文本字体文件(如.woff和.woff2)放在wildfly缓存中,但不幸的是我没有。
图像文件(.gif,.png)和CSS文件位于缓存中,只包含不在缓存中的文本字体。
我使用了此网站提供的提示,但仍然无法正常使用:https://gist.github.com/remibantos/5e86829e1ba6ad64eea1
我把这些谓词放在了野外:... path-suffix [ '.woff2'] or path-suffix [ '.woff2.xhtml'],
但我无法拥有缓存。
按照WildFly 10代码执行缓存:
独立-full.xml
<subsystem xmlns="urn:jboss:domain:undertow:3.0">
<server name="default-server">
<host name="default-host" alias="localhost">
<filter-ref name="custom-max-age" predicate="path-suffix['.js'] or path-suffix ['.js.xhtml'] or path-suffix ['.json'] or path-suffix ['.json.xhtml'] or path-suffix ['.html'] or path-suffix ['.css'] or path-suffix ['.css.xhtml'] or path-suffix ['.jpg'] or path-suffix ['.jpg.xhtml'] or path-suffix ['.jpeg'] or path-suffix ['.jpeg.xhtml'] or path-suffix ['.png'] or path-suffix ['.png.xhtml'] or path-suffix ['.gif'] or path-suffix ['.gif.xhtml'] or path-suffix ['.eot'] or path-suffix ['.eot.xhtml'] or path-suffix ['.ttf'] or path-suffix ['.ttf.xhtml'] or path-suffix ['.woff'] or path-suffix ['.woff.xhtml'] or path-suffix ['.woff2'] or path-suffix ['.woff2.xhtml']"/>
</host>
</server>
<filters>
<response-header name="custom-max-age" header-name="Cache-Control" header-value="max-age=64800000, public"/>
</filters>
</subsystem>
请帮我解决这个问题。
THX。
答案 0 :(得分:0)
经过一些测试,我发现问题在于我没有使用ssl。如果我启用ssl(https),通常会发生缓存。
然后在网站开发期间我使用http,当我需要试验缓存时,我使用https。
我不知道为什么会这样,但至少想出了如何解决这个问题并继续开发。
真的感谢你们所有的帮助:)
答案 1 :(得分:0)
如果添加disable-caching-for-secured-pages =“false”,我认为它也适用于非https
<servlet-container name="default" disable-caching-for-secured-pages="false">