2013-06-05 14 views
18

Warum funktioniert das Einbetten von Google Fonts nicht auf Heroku?Heroku und Google Fonts

Zum Beispiel:

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

EDIT: stellt sich heraus, es funktioniert, eine meiner Chrome-Erweiterungen wurde es als ein „unsicheres Skript“ blockiert

Antwort

42

Ich entdeckte, dass Heroku Sicherheitsparameter setzt die Google für die Verwendung von Schriften URL. Es möchte das https anstelle von einfachem http benutzen. Hier ist, was bei mir funktioniert hat.

Statt:

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

benutzte ich

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

Wenn Sie die zweite Zeile beachten Sie die http auslässt, so dass Heroku https verwenden. Ich nehme an, dass Sie möglicherweise https im Link verwenden könnten, wenn Sie wollten.

+0

danke! Mann, der half –

12

Verwenden Sie einfach HTTPS statt HTTP:

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

Das funktionierte für mich nach dem Versuch alles andere. – j0e

1

ändern Link zu HTTPS

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

Ein besserer Ansatz ist es, das Protokoll ganz wegzulassen und starten Sie einfach mit '//'. Das richtige Protokoll (HTTP oder HTTPS) wird je nach Server-Kontext verwendet wird

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

Oder können Sie die URL verwenden, ohne das HTTP-Protokoll

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

Mit dieser beiden http und https Arbeit angeben.

Verwandte Themen