在rails

时间:2015-09-12 07:23:41

标签: openshift

我真的很享受OpenShift,直到我尝试在rails应用程序上部署ruby。应用程序正确部署,但当我向网站发送http请求时,我收到标准的ror网页错误消息,此错误消息显示在“rhc tail”中。

  

[2015-09-12 03:15:10.4835 139977 / 7f5e103ca700 Pool2 / Spawner.h:738]:[App 148847 stdout]   [2015-09-12 03:15:10.7690 139977 / 7f5e103ca700 Pool2 / Implementation.cpp:849]:无法为组生成进程/ var / lib / openshift / 55f3cf757628e18647000018 / app-root / runtime / repo #default:错误在启动Web应用程序时发生。        在'void Passenger :: ApplicationPool2 :: Spawner :: handleSpawnErrorResponse(Passenger :: ApplicationPool2 :: Spawner :: NegotiationDetails&amp;)'(Spawner.h:1172)        在'Passenger :: ApplicationPool2 :: ProcessPtr Passenger :: ApplicationPool2 :: Spawner :: negotiateSpawn(Passenger :: ApplicationPool2 :: Spawner :: NegotiationDetails&amp;)'(Spawner.h:1135)        在'虚拟Passenger :: ApplicationPool2 :: ProcessPtr Passenger :: ApplicationPool2 :: DirectSpawner :: spawn(const Passenger :: ApplicationPool2 :: Options&amp;)'(DirectSpawner.h:213)        在'void Passenger :: ApplicationPool2 :: Group :: spawnThreadRealMain(const Passenger :: ApplicationPool2 :: SpawnerPtr&amp;,const Passenger :: ApplicationPool2 :: Options&amp;,unsigned int)'(Implementation.cpp:782)   [2015-09-12 03:15:10.7692 139977 / 7f5e10e0c700 agents / HelperAgent / RequestHandler.h:1971]:[客户端20]无法结账会话。启动Web应用程序时发生错误。   错误页面:   您已经激活了机架1.5.2,但您的Gemfile需要机架1.6.4。使用bundle exec可以解决这个问题。 (宝石:: LoadError)     /opt/rh/ror40/root/usr/share/gems/gems/bundler-1.3.5/lib/bundler/runtime.rb:33:in block in setup' /opt/rh/ror40/root/usr/share/gems/gems/bundler-1.3.5/lib/bundler/runtime.rb:19:in setup'     /opt/rh/ror40/root/usr/share/gems/gems/bundler-1.3.5/lib/bundler.rb:120:in setup' /opt/rh/ror40/root/usr/share/gems/gems/bundler-1.3.5/lib/bundler/setup.rb:17:in'     /opt/rh/ruby200/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:135:in require' /opt/rh/ruby200/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:135:in救援需要'     /opt/rh/ruby200/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:144:in require' /opt/rh/ruby200/root/usr/share/gems/gems/passenger-4.0.18/lib/phusion_passenger/loader_shared_helpers.rb:212:in run_load_path_setup_code'     /opt/rh/ruby200/root/usr/share/gems/gems/passenger-4.0.18/helper-scripts/rack-loader.rb:69:in load_app' /opt/rh/ruby200/root/usr/share/gems/gems/passenger-4.0.18/helper-scripts/rack-loader.rb:96:in'     /opt/rh/ruby200/root/usr/share/gems/gems/passenger-4.0.18/helper-scripts/rack-loader.rb:4:in <module:PhusionPassenger>' /opt/rh/ruby200/root/usr/share/gems/gems/passenger-4.0.18/helper-scripts/rack-loader.rb:3:in'   101.100.138.151 - - [12 / Sep / 2015:03:15:10 -0400]“GET / HTTP / 1.1”500 682“ - ”“Mozilla / 5.0(X11; Linux x86_64)AppleWebKit / 537.36(KHTML,和Gecko一样) )Chrome / 44.0.2403.155 Safari / 537.36“   101.100.138.151 - - [12 / Sep / 2015:03:15:11 -0400]“GET /favicon.ico HTTP / 1.1”200 - “http://cv-francismb.rhcloud.com/”“Mozilla / 5.0(X11; Linux x86_64)AppleWebKit /537.36(KHTML,与Gecko一样)Chrome / 44.0.2403.155 Safari / 537.36“

如果您需要任何信息来帮助我解决这个问题,我会更乐意提供它!感谢所有帮助!

3 个答案:

答案 0 :(得分:1)

我得到了同样的错误。 case也和我在openshift上的rails项目上部署我的ruby一样。部署屏幕以成功消息结束,并且该屏幕没有错误。但当我试图检查我的网络生产时它给了我错误

  

网站目前无法使用

然后我尝试了一些谷歌解决方案,最后我通过ssh访问我的网站主机,然后我进入root-app文件夹并运行以下命令

gem install rack

我做了Ctlr + F5并让我的应用运行 -  Here是原始来源的链接

答案 1 :(得分:1)

我遇到了这个问题。我运行了以下内容:

rhc ssh <myapp>       #where '<myapp>' was the name of my rails project
gem install rack 

浏览器刷新后,我的应用程序正常启动。

答案 2 :(得分:0)

我必须将它添加到我的Gemfile中:

gem 'rack', '1.5.2'

否则我会遇到机架版本与OpenShift中部署版本不同的问题。