【问题标题】:Assets in .scss not compiling with HTTPS like rest of app assets.scss 中的资产不像其他应用程序资产那样使用 HTTPS 编译
【发布时间】:2014-07-17 13:39:45
【问题描述】:

我的 Rails 4 应用程序存在一些使用 HTTP 而不是 HTTPS 预编译的资产的问题。所有 CSS 和 JS 都符合 HTTPS 的路径,视图中的图像也使用 HTTPS。这个问题是在 css.scss 文件中,我有:

background: image-url('bg.jpg') no-repeat;  

编译后,它使用 HTTP 而不是 HTTPS,就像其他资产一样。

我已将配置设置为在生产中使用 SSL:

config.action_controller.asset_host = "https://www.example.com"
config.force_ssl = true

并在生产环境中预编译资产,但无法正常工作。我曾尝试使用asset_url 而不是image-url,但这也不起作用。

我正在使用 Rails (4.0.8)、Sass-rails (4.0.2)、Sprockets (2.11.0) 和 Sprockets-rails (2.0.1)。

为什么 css.scss 中的资产不使用 HTTPS 编译?

【问题讨论】:

  • 我遇到了类似设置的类似情况。

标签: ssl ruby-on-rails-4 sass asset-pipeline sprockets


【解决方案1】:

对我来说,问题是由于我的生产环境中./tmp/cache 中仍然存在一些资产造成的。当我删除这些时,./config/environments/production.rb 中的最新配置更改被正确提取。如果失败,我还建议您执行rm -rf public/assetsRAILS_ENV=production rake assets:precompile 以确保您看到正确的资产并且不会缓存内容。希望这会有所帮助。

(编辑:另见 - https://github.com/rails/sprockets-rails/issues/124

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-09
    • 1970-01-01
    • 1970-01-01
    • 2014-03-03
    • 2012-03-14
    • 1970-01-01
    • 1970-01-01
    • 2023-03-13
    相关资源
    最近更新 更多