Приложение Grails, значки FontAwesome становятся невидимыми с помощью https - PullRequest
0 голосов
/ 07 февраля 2019

Я унаследовал это приложение Grails (v3.3.0) и мне нужно добавить SSL в игру.Приложение уже работает должным образом в интрасети, используя http (то есть: нет ссылок www).Он использует FontAwesome v4.7, который отлично отображает значки FA в http.Однако после того, как я добавил SSL в уравнение, значки FA больше не отображаются.

При ближайшем рассмотрении проблема, по-видимому, связана с:

[https-jsse-nio-8443-exec-1] org.grails.web.errors.GrailsExceptionResolver IO Exception occurred when processing request: [GET] /XXX/font-awesome/fonts/fontawesome-webfont.eot An established connection was aborted by the software in your host machine. Stacktraace follows:...

Но дело в том, что я могу нажать на этот URL, чтобы получить / скачать файл: https://localhost:8443/XXX/font-awesome/fonts/fontawesome-webfont.eof

Похоже, что tomcat работает правильно, и я не уверен, в чем проблема.Может ли какой-нибудь гуру поделиться вашим пониманием?

Каталоги выглядят следующим образом

Это фрагмент application.groovy

grails.plugin.springsecurity.controllerAnnotations.staticRules = [
   [pattern: '/',                 access: ['permitAll']],
   [pattern: '/index',            access: ['permitAll']],
   [pattern: '/index.gsp',        access: ['permitAll']],
   [pattern: '/Absolute/**',      access: ['permitAll']],
   [pattern: '/font-awesome/**',  access: ['permitAll']],
   [pattern: '/js/**',            access: ['permitAll']],
   [pattern: '/css/**',           access: ['permitAll']],
   [pattern: '/images/**',        access: ['permitAll']],
   [pattern: '/fonts/**',         access: ['permitAll']],
   [pattern: '/**/favicon.ico',   access: ['permitAll']]
]
grails.plugin.springsecurity.filterChain.chainMap = [
   [pattern: '/assets/**',        filters: 'none'],
   [pattern: '/**/js/**',         filters: 'none'],
   [pattern: '/**/css/**',        filters: 'none'],
   [pattern: '/**/images/**',     filters: 'none'],
   [pattern: '/**/favicon.ico',   filters: 'none'],
   [pattern: '/**',               filters: 'JOINED_FILTERS']
]

Это фрагмент моего application.yml

server:
   contextPath: /XXX
---
environments:
   production:
      server:
         port: 8443
         ssl:
            enabled: true
            key-alias: tomcat
            key-store: c:/ssl/keystore.jks
            key-store-password: password
            key-store-type: JKS
---

Фрагмент кода для включения FA в * .gsp:

<link rel="stylesheet" type="text/css" href="${request.contextPath}/font-awesome/css/font-awesome.css">

Внутри шрифта-awesome.css, это вверху:

@font-face {
  :
  src: url('../fonts/fontawesome-webfont.eot?v=4.7.0');
  :
}

Это фрагмент кода для отображения значка FA:

<div class="section">
   <label for="username" class="field prepend-icon">
      <input type='text' name='username' class='gui-input'>
      <label for='username' class='field-icon'>
         <i class='fa fa-user'></i>
      </label>
   </label>

PS: я не могу получить доступ к внешним ссылкам, поэтому яможно только в интранет

...