2012-02-28 64 views
0

我使用最新的Passenger 3.0.11在Apache上运行Rails 3.1.2。我正在使用force_ssl在我的一些应用程序的操作中要求安全连接。Rails请求对象包含错误的协议

网络浏览器警告,虽然网站的身份已经过验证并且连接已加密,但该网页还包含其他不安全的资源。罪魁祸首是通过纯粹的http制作的Google Fonts API的参考。我的看法包含以下内容:在有 “HTTP://” 样式表的URL,这些结果

= stylesheet_link_tag "http#{request.ssl? ? 's' : ''}://fonts.googleapis.com/css?family=Oswald" 

两个:

= stylesheet_link_tag "#{request.port}fonts.googleapis.com/css?family=Oswald" 

我也尝试过这一点。

我在Rails 3.0.5/Passenger 3.0.7/SslRequirement中成功完成了这项工作,但无法在Rails 3.2.1/Passenger 3.0.11/force_ssl中使用。

回答

1

将“//fonts.googleapis.com/css?family=Oswald”放在没有http或https的地方 - 浏览器使用与您所在页面相同的协议,并且不显示任何警告。