Rails вычисляет неверный домен ресурсов только для шрифтов, Firefox не может загрузить
По какой-то причине шрифты являются единственными ресурсами, которые загружаются из домена http://example.com/ вместо http://www.example.com/, и из-за этого не отображаются в Firefox из-за CORS.
это меньше файла, который загружает шрифты:
@font-face {
font-family: 'example';
src: asset-url('example.eot?97822167');
src: asset-url('example.eot?97822167#iefix') format('embedded-opentype'),
asset-url('example.woff?97822167') format('woff'),
asset-url('example.ttf?97822167') format('truetype'),
asset-url('example.svg?97822167#example') format('svg');
font-weight: normal;
font-style: normal;
}
Firefox говорит:
downloadable font: download failed (font-family: "example" style:normal weight:normal stretch:normal src index:2): bad URI or cross-site access not allowed
source: http://example.com/assets/example-c93f82c639ee9474376d8df30300127a.ttf?97822167
Хост ресурса установлен на www.example.com. почему домен не так? как я могу это изменить?
Спасибо
2 ответа
Убедитесь, что ваши шрифты помещены в
app/assets/fonts
vendor/assets/fonts
или жеlib/assets/fonts
так как вы используете Rails 4Убедитесь, что ваши ресурсы предварительно скомпилированы, я не уверен, что прекомпилирует конвейер rails
.svg
.woff
и т.д.. по умолчанию.
config.assets.precompile << /\.(?:svg|eot|woff|ttf)\z/
Редактировать:
Также убедитесь, что Rails обслуживает статические ресурсы config.serve_static_assets = true