-1

我是 Rails 的新手,正在尝试将应用程序部署到 CentOS 服务器。我选择使用 RVM,因为它似乎被强烈推荐。我对 Nginx、Apache 或Passenger Stand Alone 持开放态度——任何可行且最简单的方法。

我一直在努力进行此安装,但认为我已经成功清理了自己,现在已经按照单用户(非 sudo)rvm 安装(包括 ssh)的说明进行操作。

我不明白的一件事是应该如何安装乘客(鉴于正在使用 RVM)?:

gem install passenger
sudo gem install passenger
rvmsudo gem install passenger

我假设无论它是如何安装的,它都应该以相同的方式启动。我已经尝试了这些方法中的每一种,但在所有情况下都遇到了问题。

当我使用 sudo 启动乘客时,我收到:

在任何来源中都找不到 factory_girl-3.6.1 (Bundler::GemNotFound)

我注意到有时我的 ruby​​ 版本会是 1.8.7,即使我使用 RVM 将其设置为 1.9.3-p194,所以我卸载了 1.8.7(已在 RVM 之前安装)并重新安装了 1.9.3-p194(使用 RVM并再次指定 openssl)。我重新安装了乘客

现在,当我执行“sudo 乘客启动”时,我只是得到一个新的提示,好像什么都没发生一样。另外,如果我执行“sudo gem install Passenger”。

最后,我注意到如果我使用 rvmsudo 启动乘客,网络服务器确实会启动,但是它会给控制台一个错误:

/usr/bin/evn: ruby​​: 权限被拒绝

任何帮助将不胜感激。

4

1 回答 1

1

你不应该使用sudo

gem install passenger
passenger start

但是,如果您使用sudo/ rvmsudo- 您可以更改某些目录的权限,如果其中任何一个被报告为不可访问,则使用以下命令修复它们:

chown -R $USER: {dir}
chmod -R u+rwX,g+rwX,o+rX,o-w {dir}
于 2012-09-09T21:55:32.843 回答