使用nginx在Linux中本地部署Httpresponder

时间:2016-11-24 04:29:13

标签: ruby-on-rails ubuntu nginx passenger

我是Ruby on Rails的新手。我被要求从git本地部署httpresponder(没有Heroku)。

以下是git repo的链接: https://github.com/aaronlerch/respond-to-it

我在这里按照本教程指导我:

https://www.digitalocean.com/community/tutorials/how-to-deploy-a-rails-app-with-passenger-and-apache-on-ubuntu-14-04#step-6- - 部署

以下文字是我在testapp.config文件中插入的内容:

ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html/respond-to-it-master/public
    RailsEnv development
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    <Directory "/home/rails/testapp/public">
            Options FollowSymLinks
            Require all granted
    </Directory>

当我重新启动Apache时,我收到以下错误:

cannot load such file -- bundler/setup (LoadError)
  /usr/local/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
  /usr/local/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
  /usr/lib/ruby/vendor_ruby/phusion_passenger/loader_shared_helpers.rb:430:in `activate_gem'
  /usr/lib/ruby/vendor_ruby/phusion_passenger/loader_shared_helpers.rb:297:in `block in run_load_path_setup_code'
  /usr/lib/ruby/vendor_ruby/phusion_passenger/loader_shared_helpers.rb:435:in `running_bundler'
  /usr/lib/ruby/vendor_ruby/phusion_passenger/loader_shared_helpers.rb:296:in `run_load_path_setup_code'
  /usr/share/passenger/helper-scripts/rack-preloader.rb:100:in `preload_app'
  /usr/share/passenger/helper-scripts/rack-preloader.rb:156:in `<module:App>'
  /usr/share/passenger/helper-scripts/rack-preloader.rb:30:in `<module:PhusionPassenger>'
  /usr/share/passenger/helper-scripts/rack-preloader.rb:29:in `<main>'

Error ID
769d7537

似乎问题出在我安装的Ruby上。

1 个答案:

答案 0 :(得分:0)

我找到了问题的解决方案。我不得不将gemfiles更新为正确的ruby和json版本。 然后我不得不进行捆绑安装。

以下是我遵循的步骤:

导航到源代码的位置:

rails _4.2.5.1_ new my_new_app

Gemfile中的ruby版本需要更改为计算机上安装的版本:

cd /var/www/html/respond-to-it-master/

将版本号更新为以下内容:

sudo nano Gemfile

保存文件(CTRL + X,Y,ENTER)。 现在更新由ruby实现的json版本:

ruby '2.3.0'

将版本号更新为以下内容:

sudo nano Gemfile.lock

运行以下命令安装整个软件包:

json (1.8.3)

现在,网络应用程序将在本地运行。