Ruby on rails Rails AWS:主要欢迎页面赢得';别走开

Ruby on rails Rails AWS:主要欢迎页面赢得';别走开,ruby-on-rails,amazon-web-services,amazon-elastic-beanstalk,Ruby On Rails,Amazon Web Services,Amazon Elastic Beanstalk,我有一个运行postgresql的基本Rails应用程序。在当地,它像蛤蜊一样快乐。我已经运行了eb init、eb start和eb status,它们返回url、status ready和health green。在本地,我的更改显示在我的rails应用程序上(没有什么特别之处,只是一个根目录,而不是beanstalk欢迎屏幕)。当我git aws.push时,它将推送到正确的环境名称,愉快地按下并压缩对象,以“remote to”+long string+“HEAD->master(强制更

我有一个运行postgresql的基本Rails应用程序。在当地,它像蛤蜊一样快乐。我已经运行了eb init、eb start和eb status,它们返回url、status ready和health green。在本地,我的更改显示在我的rails应用程序上(没有什么特别之处,只是一个根目录,而不是beanstalk欢迎屏幕)。当我git aws.push时,它将推送到正确的环境名称,愉快地按下并压缩对象,以“remote to”+long string+“HEAD->master(强制更新)”结束

我一直等到git“eb status”再次变为绿色(它表示最初正在更新,因此它显然是在正确的位置),然后转到指定的url…豆茎问候语仍然存在

(不再相关;此解决方案似乎只适用于早期版本的rails;保留此解决方案以澄清注释)此人()也有类似问题,但当我键入“git rm public/index.html”时,我得到了“致命:pathspec'public/index.html'与任何文件都不匹配”

我使用的是Rails 4.0.1。有什么想法吗

编辑:

我认为问题可能与不使用RDS有关;当我使用时,这个问题并不存在。但在这个应用程序上,我正在尝试运行一个本地Postgresql,就像我在Heroku上运行一样

编辑:

我的路线文件

App::Application.routes.draw do
   resources :users

   root "users#show"
end
编辑:

看看EC2,它在最近的活动中指出

Instance: i-9ebf03b0 Module: AWSEBAutoScalingGroup ConfigSet: null] Command failed on      instance. 
Return code: 1 Output: Error occurred during build: Command hooks failed. 
查看日志,我看到以下内容:

Installing pg (0.17.1) 
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

    /usr/bin/ruby1.9 extconf.rb 
    checking for pg_config... no
    No pg_config... trying anyway. If building fails, please try again with --with-pg-config=/path/to/pg_config
    checking for libpq-fe.h... no
    Can't find the 'libpq-fe.h header
    *** extconf.rb failed ***
    Could not create Makefile due to some reason, probably lack of
    necessary libraries and/or headers.  Check the mkmf.log file for more details.  You    
    may need configuration options
研究和尝试上述各种事情;只是想让乐于助人、询问的人不断更新:)

解决了

如果我转到处理Rails应用程序的EC2实例并键入以下命令,它将修复问题

sudo yum安装postgresql postgresql server postgresql devel postgresql contrib postgresql docs postgresql libs


回想起来,我希望我已经一个接一个地输入了上面的内容,看看到底是哪一个解决了问题,但都是一样的。

您可能想将其添加到配置中,以便它可以扩展:

$ cat .ebextensions/postgres.config
packages:
  yum:
    postgresql-devel: []

在rails 4.0中,public/index.html在默认情况下已被删除,因此此文件将不可用。请使用您的配置/路由文件更新qsn。您可以更具体地使用qsn和配置/路由文件吗?我不知道qsn代表什么…可以使用rails应用程序中的config/routes文件更新您的问题问题问题中提到的解决方案指向使用rails 3.2.4的应用程序。此版本在创建rails应用程序时创建public/index.html。Morgan使用的rails 4不包含public/index.html文件,我将根据自己使用rails+Beanstalk的经验做一点说明。默认情况下,beanstalk实例在将实例添加到负载平衡器之前尝试“捆绑安装”。mysql2 gem安装没有问题,这意味着Amazon提供的实例已经具有编译该gem的依赖项,但是(从Morgan的错误消息推断)它没有Postgres头/libs。默认情况下,它当然不会运行Postgres服务器,但这将是一个单独的错误。