2013-06-05 4 views
18

Почему не встраивание шрифтов Google работает на Heroku?Heroku и Google Fonts

Например:

<link href='http://fonts.googleapis.com/css?family=<some_kinda_font>' rel='stylesheet' type='text/css'> 

EDIT: оказывается, она работает, один из моих расширений хрома блокировал его как «небезопасный сценарий»

ответ

42

Я обнаружил, что Heroku устанавливает параметры безопасности для использования Google шрифты url. Он хочет использовать https вместо простого http. Вот что сработало для меня.

Вместо:

@import url('http://fonts.googleapis.com/css?family=Oswald:400,700,300'); 

Я использовал

@import url('//fonts.googleapis.com/css?family=Oswald:400,700,300'); 

Если вы заметили, что вторая линия выходит из НТТР, позволяя Heroku использовать протокол HTTPS. Я предполагаю, что вы могли бы использовать https в ссылке, если хотите.

+0

спасибо! человек, который помог –

12

Просто используйте HTTPS вместо HTTP:

<%= stylesheet_link_tag "application", 'https://fonts.googleapis.com/css?family=<font_name>', :media => "all" %> 
+1

Это работало для меня, пробовав все остальное. – j0e

1

Изменить ссылку на HTTPS

 
<link href='https://fonts.googleapis.com/css?family=some_kinda_font' rel='stylesheet' type='text/css'> 
2

Лучший подход является убирание протокол вообще и просто начать с '//'. Правильный протокол (HTTP или HTTPS), будет использоваться в зависимости от контекста сервера

<link href='//fonts.googleapis.com/css?family=some_kinda_font' 
rel='stylesheet' type='text/css'> 
2

Или вы можете использовать URL без указания протокола НТТР

<%= stylesheet_link_tag "application", '//fonts.googleapis.com/css?family=<font_name>', :media => "all" %> 

С этим как HTTP и HTTPS работы.