1、问题发现之前的准备

在读《Learn Python In Hard Way》的时候,发现作者谈到一个非常有趣的事情,在做一些有趣的事情之前做的无聊的事情叫做yak shaving,牦牛剪毛。

相似学习一门语言或技术前的安装,配置等等东西。

曾经听一位师兄说假设你搞web的话,能够去学习下ROR。查了下发现是Ruby on rails,作为它的作者——

David Heinemeier Hansson也是一个相当奇妙的程序猿。然后这次本来想系统性学习下Ruby。可是发现细节好多。所以想换第二种学习方式,直接上手ROR。

关于这样的学习方式,我又去搜了一些经验回答。有一位前辈总结的非常好。

过了3本书。

1、《HeadFirst HTML AND CSS》
2、《The linux command line》
3、《Pro git》
从主要的前端。linux的总体和主要的shell。以及git工具。个人依据个人知识略过第一本,挑不懂的知识点看,后两本看得比較细致。

我发现会用git。并不知道快照原来是如此一回事,整个git的控制流程是与svn怎样的不同。第一次发现linux里面双击能够复制,鼠标中键能够直接粘贴。

2、发现问题

后面再看的《Ruby on Rails tutorial》。第一章就是yak shaving。
自己配置ROR环境,然后正式部署到Heroku。然后问题就来了。Application Error和code=H10 desc="App crashed“问题。
Heroku本身能够看错误,点击view logs

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

at=error code=H10 desc="App crashed" method=GET path=/ host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes=

3、问题解决

依据这个并不能看出问题所在,继续查。

http://stackoverflow.com/questions/13496827/heroku-deployment-error-h10-app-crashed

跟第一个回答那样,输入heroku run rails console。能够排除一下故障。

2016-02-29T05:18:58.740439+00:00 app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/sass-rails-5.0.1/lib/sass/rails/helpers.rb:11:in `<top (required)>': uninitialized constant Sass::Script (NameError)
2016-02-29T05:18:58.740461+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/sass-rails-5.0.1/lib/sass/rails.rb:8:in `require'
2016-02-29T05:18:58.740463+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/sass-rails-5.0.1/lib/sass/rails.rb:8:in `<top (required)>'
2016-02-29T05:18:58.740463+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/sass-rails-5.0.1/lib/sass-rails.rb:1:in `require'
2016-02-29T05:18:58.740464+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/sass-rails-5.0.1/lib/sass-rails.rb:1:in `<top (required)>'
2016-02-29T05:18:58.740465+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/bundler-1.9.7/lib/bundler/runtime.rb:76:in `require'
2016-02-29T05:18:58.740466+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/bundler-1.9.7/lib/bundler/runtime.rb:76:in `block (2 levels) in require'
2016-02-29T05:18:58.740466+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/bundler-1.9.7/lib/bundler/runtime.rb:72:in `each'
2016-02-29T05:18:58.740469+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/bundler-1.9.7/lib/bundler/runtime.rb:72:in `block in require'
2016-02-29T05:18:58.740470+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/bundler-1.9.7/lib/bundler/runtime.rb:61:in `each'
2016-02-29T05:18:58.740470+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/bundler-1.9.7/lib/bundler/runtime.rb:61:in `require'
2016-02-29T05:18:58.740471+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/bundler-1.9.7/lib/bundler.rb:134:in `require'
2016-02-29T05:18:58.740472+00:00 app[web.1]: from /app/config/application.rb:7:in `<top (required)>'
2016-02-29T05:18:58.740473+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:78:in `require'
2016-02-29T05:18:58.740473+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:78:in `block in server'
2016-02-29T05:18:58.740474+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:75:in `tap'
2016-02-29T05:18:58.740475+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:75:in `server'
2016-02-29T05:18:58.740475+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
2016-02-29T05:18:58.740476+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.2.0/gems/railties-4.2.0/lib/rails/commands.rb:17:in `<top (required)>'
2016-02-29T05:18:58.740477+00:00 app[web.1]: from bin/rails:9:in `require'
2016-02-29T05:18:58.740477+00:00 app[web.1]: from bin/rails:9:in `<main>'
2016-02-29T05:18:59.458586+00:00 heroku[web.1]: State changed from starting to crashed
2016-02-29T05:18:59.444429+00:00 heroku[web.1]: Process exited with status 1

依据

/app/vendor/bundle/ruby/2.2.0/gems/sass-rails-5.0.1/lib/sass/rails/helpers.rb:11:in `<top (required)>': uninitialized constant Sass::Script (NameError)

能够推測应该是gem文件里的sass-rails版本号的问题。

我突然想起了这个细节。

事实上依据第三版的书上面的Gemfile配置,书上的配置是gem 'sass-rails','5.0.0.beta1',这一步在运行bundle install的时候就会报错了。

我是直接把beta1去掉。

由于这个错误,我把它改成了5.0.1版本号。

可是还是错误。上周弄得我一头雾水。今天又一次整理思路后。再查这个错误。

居然是要配置为gem 'sass-rails','5.0.2'。
成功正式部署Hello world。

近期看了《音乐的秘密》,一部介绍一首歌的幕后工作,作为程序猿应该也能相同看到对职业的一种尊重。
近期好像突然有了软肋,又突然有了铠甲。变得更加的坚定。

ROR部署到Heroku出现Application Error和code=H10 desc=&quot;App crashed“问题的更多相关文章

  1. 【Azure 应用服务】部署Jar到App Service for Linux,因启动命令路径配置错误而引起:( Application Error 问题

    问题描述 App Service for Linux 资源创建完成后,通过FTP方式把 .jar包(logdemo.jar)包上传到 /site/wwwroot/ 文件夹后,在App Service的 ...

  2. [Ting's笔记Day5]在部署到Heroku之前,将Rails项目从SQLite设定为PostgreSQL

    前情提要: Paas(平台及服务)公司Heroku是个可以把我们写好的App部署到网际网络的好地方.而本篇是我从自己的上一篇文章:将Ruby on Rails项目部署到Heroku遇到的问题,当时困扰 ...

  3. 将 django部署到 heroku上

    为什么要这样做,因为我并没有弄懂,使用传统和推荐的方法来部署django.刚好我手里有这么一份教程我就按照这么做了. 1. 访问 http://heroku.com/ 完成一个注册,注册需要一个国外的 ...

  4. fastapi+vue搭建免费代理IP网站部署至heroku

    说明 最近需要用到一些HTTP的代理,用于爬虫去爬取信息,搜索了一些网站,貌似现在这类提供免费代理IP的网站很多,刚好最近看了点vue的视频,弄个网站练练. 部署到heroku,预览地址:点击这里 F ...

  5. xp操作系统下配置iis,出现了server application error的解决办法

    在网上搜索了很多解决办法,最后发现一个差不多的: Server Application Error The server has encountered an error while loading ...

  6. Runtime Error---Description: An application error occurred on the server....

    [原]Runtime Error---Description: An application error occurred on the server.... 2010-1-7阅读2010 评论3 D ...

  7. server application error应用错误

    本地使用IIS测试ASP脚本网页,结果发现提示[Server Application Error The server has encountered an error while loading a ...

  8. APPLICATION ERROR #1502 .

    mantisbt出现1502问题解决:引起问题的原因:当提交的问题有分类,此时删除此分类,就会出现下面的情况.问题描述:APPLICATION ERROR #1502 没有找到类别.请使用浏览器的“返 ...

  9. Autel MaxiDAS DS708 Fatal Application Error illegal operation

    I get one Original Autel MaxiDAS® DS708 Update Service, after complete update, I got a message " ...

随机推荐

  1. 使用PropTypes进行类型检测

    PropTypes 是react提供的用于检验数据类型的typechecking,避免应用越来越大的时候出现意料之外的bug class Greeting extends React.Componen ...

  2. 【HDOJ5996】dingyeye loves stone(Nim游戏)

    题意:dingyeye喜欢和你玩石子游戏.dingyeye有一棵n个节点的有根树,节点编号为0到n−1,根为0号节点. 游戏开始时,第i个节点上有a[i]个石子.两位玩家轮流操作,每次操作玩家可以选择 ...

  3. jQuery性能优化【转】

    原文发布时间为:2010-10-22 -- 来源于本人的百度文章 [由搬家工具导入] 之前,我们减少字节数和请求次数以及加载顺序以使页面加载的更快。如今,我们越来越多的注意到另一个影响网站性能的部分- ...

  4. gridview行链接

    原文发布时间为:2009-04-21 -- 来源于本人的百度文章 [由搬家工具导入] 点击行,链接!! 可这样,在GridView的RowDataBound输入代码,假如id在第0列,且不是摸板列: ...

  5. EL与OGNL

    EL表达式:  >>单纯在jsp页面中出现,是在四个作用域中取值,page,request,session,application. >>如果在struts环境中,它除了有在上 ...

  6. 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---5

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下: <Linux命令行与shell脚本 ...

  7. centos7下配置时间同步服务器

    同网段20几台服务器: 其中有一组mysql 集群中 互为主从 选一台mysql master 作为时间同步的服务器,这样做的好处以便于这台down了 另一个与他互为主从的master 继续提供时间同 ...

  8. 查看windows进程,并删除

    1. 通过[任务管理器]可以查看windows进程. 有些进程不在[任务管理器]中. 2. 通过tasklist命令查看进程. 杀掉进程: epmd 进程,在停止.卸载后rabbitmq服务还在. 通 ...

  9. iscsi 学习

    iscsi-initiator-utils-6.2.0.872-10.el6.x86_64 iscsi-initiator-utils-6.2.0.873-32.el7.x86_64 在el7中, i ...

  10. LeakCanary: 让内存泄露无所遁形

    LeakCanary: 让内存泄露无所遁形 09 May 2015 本文为LeakCanary: Detect all memory leaks!的翻译.原文在: https://corner.squ ...