1.    修改项目中指向静态资源文件的链接

a)     访问静态资源文件

<%= stylesheet_link_tag "application", media: "all" %>
<%= javascript_include_tag "application" %>
<%= image_tag "icons/rails.png" %>

b)     CSS 和 ERB

只要给 CSS 文件添加 .erb 扩展名(例如 application.css.erb),就可以在 CSS 规则中使用 asset_path 等辅助方法。

.class { background-image: url(<%= asset_path 'image.png' %>) }

c)     CSS 和 Sass

在使用 Asset Pipeline 时,静态资源文件的路径都必须重写

image-url("rails.png")  #回报 url(/assets/rails.png)
image-path("rails.png") #回报 "/assets/rails.png"

也可以使用更通用的形式:

asset-url("rails.png")  #回报 url(/assets/rails.png)
asset-path("rails.png") #回报 "/assets/rails.png"

d)     JavaScript/CoffeeScript 和 ERB

$('#logo').attr({ src: "<%= asset_path('logo.png') %>" });

2.    预编译

a)     预处理命令

rake assets:precompile

执行后项目public下生成asset目录,所有经过预编译处理的静态文件存放在这里。Rails服务默认不做静态资源管理,如果需要可以将config/environments/下生产环境配置文件production.rb中的config.serve_static_assets设置为true,也可以交给Web服务器(nginx)处理。

b)     app/asset目录如下

c)     Public下asset目录如下

3.    启动生产环境

启动命令:

rails s –e production

Nginx配置:

rails_env production; #修改rails为生产环境

使用Asset Pipeline管理rails生产环境静态资源实现步骤的更多相关文章

  1. 已有项目使用Asset Pipeline管理静态资源

    1.    修改项目中指向静态资源文件的链接 a) 访问静态资源文件 <%= stylesheet_link_tag "application", media: " ...

  2. Django_生产环境静态文件配置

    需求: 当Django项目运行在线上的时候,需要关闭debug模式,那么Django设置中,静态文件路径配置将会失效,如何解决这个问题? 问题原因: Django默认关闭debug模式,Django错 ...

  3. 【五】MongoDB管理之生产环境说明

    下面详细说明影响mongodb的系统配置,尤其在生产环境上. 1.生产环境推荐的平台 Amazon Linux Debian 7.1 Red Hat / CentOS 6.2+ SLES 11+ Ub ...

  4. ruby on rails 生产环境调试项目日志查看

    1.项目目录:log/production.log 2.nginx日志:/opt/nginx/logs 生产环境下做的任何更改都要重启服务器 重启 sudo kill $(cat /opt/nginx ...

  5. git管理测试生产环境代码

    利用post-update实现简单钩子 #!/bin/bash cd /www/test || exit #进入指定的目录 unset GIT_DIR #清楚环境变量 git checkout mas ...

  6. spring boot 访问静态资源的步骤

    1)resources/static下放置html文件.(或者static下新建目录 http://hcss:8090/imgs/单例.png) 2)webapp下放置html文件. 如果两个路径下有 ...

  7. Rails的静态资源管理(四)—— 生产环境的 Asset Pipeline

    官方文档:http://guides.ruby-china.org/asset_pipeline.html http://guides.rubyonrails.org/asset_pipeline.h ...

  8. Ruby Rails学习中:Sass 和 Asset Pipeline,布局中的链接(Rails路由,具名路由),用户注册: 第一步

    接上篇: 一.Sass 和 Asset Pipeline Rails 中最有用的功能之一是 Asset Pipeline, 它极大地简化了静态资源文件(CSS.JavaScript 和图像)的生成和管 ...

  9. Node JS后端项目开发与生产环境总结

    原文地址:Node JS后端项目开发与生产环境总结 Node JS常用后端框架有express.koa.sails.国产框架有个egg js,已经在cnode投入生产了,还有个think js,类似t ...

随机推荐

  1. 利用paramiko获取上传下载远程服务器的资源信息

    # -*- coding: utf-8 -*- import paramikohostname='192.168.76.10'username='root'password='123456'param ...

  2. 用简单的反射优化代码(动态web项目)

    在动态web项目中,没有使用框架时,只是简单的jsp访问servlet实现增删改查, 无论是哪个方法都需要经过Servlet中的doGet()方法或doPost()方法,我们可以在链接中附带参数进行区 ...

  3. ggplot笔记002——qplot()函数

    qplot()函数 一年前就听说过ggplot,很多人都说ggplot强大,ggplot无所不能,从今天开始就让我们一起来见证一下这个神奇的R包. 首先要加载ggplot2: 1 if(!suppre ...

  4. 排序算法(java版)

    一直想理解一下基本的排序算法,最近正好在搞java所以就一并了(为了便于理解,这儿都是以从小到大排序为目的) 冒泡排序 也就是比较连续的两个值,如果前面一个值大于后面一个值,则交换. 时间复杂度为O( ...

  5. UVA 11731 Ex-circles (外切圆)

    题意:给你三角形的三条边,求图中DEF的面积和阴影部分的面积. 题解:一些模板,三角形的旁切圆半径:.与 三旁心为 #include<set> #include<map> #i ...

  6. Postman安装教程

    Postman 安装教程 在web开发和一些需要模拟HTTP请求的时候,Postman非常有用. 因为实习的时候接触到了,感觉确实非常好用.就记录下来. 以下是参考其他博主的博文,地址:http:// ...

  7. 啥是ETL、ELT

    ETL就是Extract.Transfrom.Load即抽取.转换.加载三个英文单词首字母的集合.抽取:就是从源系统抽取需要的数据,这些源系统可以是同构也可以是异构的:比如源系统可能是Excel电子表 ...

  8. 万字总结:学习MySQL优化原理,这一篇就够 了!【转】

    说起MySQL的查询优化,相信大家收藏了一堆奇技淫巧:不能使用SELECT *.不使用NULL字段.合理创建索引.为字段选择合适的数据类型..... 你是否真的理解这些优化技巧?是否理解其背后的工作原 ...

  9. 图片放大器——wpf

    <Grid>                        <Image x:Name="imgSource" Source="{Binding Web ...

  10. 高性能Js-加载和执行

    Js文件加载和执行 单线程 概念:浏览器使用单一线程处理UI渲染和js脚本执行(只触发一次) 问题:等待js文件下载.解析.执行,UI渲染和用户界面刷新被阻塞(异步方式解决) 关键:文件加载.文件执行 ...