У меня есть файлы шрифтов в моем проекте JSF 2.2 с Primefaces 5.3 и Omnifaces 2.3, и мне нужно поместить эти файлы текстовых шрифтов (как .woff и .woff2) в кеш wildfly, но, к сожалению, я не получаю.
Файлы изображений (.gif, .png) и файлы CSS находятся в кеше, только текстовые шрифты не находятся в кеше.
Я воспользовался советами с этого сайта, но все равно не смог заставить его работать: https://gist.github.com / remibantos / 5e86829e1ba6ad64eea1
Я поместил эти предикаты в wildlfy: ... path-suffix [ '.woff2'] or path-suffix [ '.woff2.xhtml'],
, но все же у меня нет кеша.
Следует коду WildFly 10, который используется для кеширования:
standalone-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>
Пожалуйста, помогите мне с этой проблемой.
Спасибо.
2 ответа
После некоторого тестирования я обнаружил, что проблема в том, что я не использую ssl. если я включаю ssl (https), обычно происходит кеш.
Затем при разработке сайта я использую http, когда мне нужно поэкспериментировать с кешем, я использую https.
Не знаю, почему так происходит, но хотя бы разобрался, как решить эту проблему и продолжить разработку.
Большое спасибо за помощь :)
Если вы добавите disable-caching-for-secured-pages = "false", я думаю, он также будет работать с не-https
<servlet-container name="default" disable-caching-for-secured-pages="false">
Похожие вопросы
Новые вопросы
caching
Кеш - это механизм для временного хранения (кэширования) данных локально, чтобы сократить время доступа к данным, хранящимся на большом расстоянии. Для просмотра ресурсов процессора / диска / веб-сайта используйте соответствующие теги (cpu-cache, diskcache, ...)