2013-06-05 24 views
18

Tại sao không nhúng phông chữ google hoạt động trên Heroku?Heroku và Google Fonts

Ví dụ:

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

EDIT: Hóa ra nó hoạt động, một trong những phần mở rộng chrome của tôi đã chặn nó như một "kịch bản không an toàn"

Trả lời

42

tôi phát hiện ra rằng Heroku đặt tham số bảo mật cho việc sử dụng google phông chữ url. Nó muốn sử dụng https thay vì http thuần. Đây là những gì làm việc cho tôi.

Thay vì:

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

tôi đã sử dụng

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

Nếu bạn nhận thấy dòng thứ hai lá ra http, cho phép Heroku sử dụng https. Tôi giả sử bạn có thể sử dụng https trong liên kết nếu bạn muốn.

+0

cảm ơn! người đàn ông đã giúp –

12

Đơn giản chỉ cần sử dụng HTTPS thay vì HTTP:

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

Điều này làm việc cho tôi sau khi thử mọi thứ khác. – j0e

1

Thay đổi liên kết đến HTTPS

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

Một cách tiếp cận tốt hơn là để lại tắt giao thức hoàn toàn và chỉ cần bắt đầu với '//'. Đúng giao thức (HTTP hoặc HTTPS) sẽ được sử dụng tùy thuộc vào bối cảnh máy chủ

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

Hoặc bạn có thể sử dụng các url mà không chỉ định giao thức http

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

Với cả http và https công việc này.

Các vấn đề liên quan