我正在尝试使用乘客在Bluehost上部署rails应用程序,但我一直都在失败。 我用以下方法安装了乘客宝石:
gem install passenger
还跑了:
passenger-install-apache2-module
运行我的所有数据库迁移并执行资产预编译
问题是,我试图在子域上托管它,所以我做了以下步骤:
PassengerEnabled On
PassengerAppRoot / home / username / rails_apps / my_app
当我在浏览器中导航到我的域时,它会给我:
内部服务器错误。 服务器遇到内部错误或配置错误,无法完成您的请求。 请联系服务器管理员webmaster@sub.domain.com
我哪里错了?
提前致谢:)
答案 0 :(得分:1)
嘿,你有没有检查过用户&您的httpd conf文件中的组? 确保如果你在httpd conf中有用户/组www-data,那么你的项目目录应该拥有相同的所有者&基。
答案 1 :(得分:1)
我也尝试过做同样的事情,但没有成功,但是当我深入挖掘时,我想到了以下内容:
Bluehost中的apache服务器使用不同路径的乘客。因此我们的安装不会影响它。
Bluehost的Passenger3.x使用ruby 1.8作为默认值,因此无法更改ruby版本。
答案 2 :(得分:1)
Check Bluehost了解.htaccess文件中的内容。 我看起来像这样:
<IfModule mod_passenger.c>
Options -MultiViews
PassengerResolveSymlinksInDocumentRoot on
#Set this to whatever environment you'll be running in
RailsEnv production
RackBaseURI /home/rails_apps/my_app
SetEnv GEM_HOME /home/<my_bluehost_username>/ruby/gems
</IfModule>
您应该使用此命令查找您的ruby gems位置:
gem env