У меня есть файлы шрифтов в моем проекте 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>

Пожалуйста, помогите мне с этой проблемой.

Спасибо.

3
Rodrigo Darti da Costa 6 Май 2016 в 04:13

2 ответа

Лучший ответ

После некоторого тестирования я обнаружил, что проблема в том, что я не использую ssl. если я включаю ssl (https), обычно происходит кеш.

Затем при разработке сайта я использую http, когда мне нужно поэкспериментировать с кешем, я использую https.

Не знаю, почему так происходит, но хотя бы разобрался, как решить эту проблему и продолжить разработку.

Большое спасибо за помощь :)

0
Rodrigo Darti da Costa 23 Авг 2016 в 23:58

Если вы добавите disable-caching-for-secured-pages = "false", я думаю, он также будет работать с не-https

<servlet-container name="default" disable-caching-for-secured-pages="false">
0
rasmusvhansen 1 Сен 2016 в 11:11