基于Rails 3,CDN域名建议独立于产品域名,不共享主站cookies。

  1. 使用helper方法替换所有资源引用
    如,图片全用image_tag标签,不用html标签

  2. 样式表升级到scss,替换背景引用方式
    用image-url标签引用图片背景

  3. 在production.rb指定assets_host

  4. CDN资源优于Cache使用
    在production.rb加入这行:

    config.middleware.insert_before Rack::Cache, Rack::Static, 
    urls: [config.assets.prefix], root: 'public'
    
  5. 配置assets pipeline

    config.serve_static_assets = false
    config.assets.compress = true
    config.assets.compile = false
    config.assets.digest = true
    

    Capistrano加入对assets compile:

    load 'deploy/assets'