我正在coolmappdb.com
的inmotion托管中部署Rails应用程序 - 当我到达那里时它说
Could not spawn process for application /home/username/public_html/coolmappdb.com: An error occurred while starting up the preloader.
<p>If that didn't work, then maybe the problem is that your gems are installed to <code>/home/username/.rvm/gems</code>, while at the same time you set <code>PassengerRuby</code> (Apache) or <code>passenger_ruby</code> (Nginx) to <code>/usr/local/rvm/gems/ruby-2.3.1/wrappers/ruby</code>. Because of the latter, RVM does not load gems from the home directory.</p>
错误消息很明确。据说我的Phusion Passenger指向错误的位置。如何让它在正确的位置工作?
更新
<VirtualHost 170.239.250.29:80>
ServerName coolmappdb.com
ServerAlias www.coolmappdb.com
DocumentRoot /home/coolma7/public_html
PassengerRuby /home/coolma7/.rvm/gems
ServerAdmin webmaster@coolmappdb.com
UseCanonicalName Off
CustomLog /usr/local/apache/domlogs/coolmappdb.com combined
<IfModule log_config_module>
<IfModule logio_module>
CustomLog /usr/local/apache/domlogs/coolmappdb.com-bytes_log "%{%s}t %I .\n%{%s}t %O ."
</IfModule>
</IfModule>
</VirtualHost>
答案 0 :(得分:1)
我在http://coolmappdb.com/访问了该应用程序,在那里您找到了问题的原因。
正如我在对您的问题的第一条评论中所述,您在权限方面遇到问题,正如您在Phusion错误页面中所述:
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/angular-material/1.1.0-rc2/angular-material.min.css">
碰巧你有
*** ERROR ***: Cannot execute /home/coolma7/.rvm/gems: Permission denied (13)
并在“环境变量”部分中,您可以找到以下内容
Ruby interpreter command = /home/coolma7/.rvm/gems
您的Ruby解释器无法在/ usr / local等系统文件夹中运行任何内容。
要解决此问题,您必须在Apache的VirtualServer中设置以下
MY_RUBY_HOME=/usr/local/rvm/rubies/ruby-2.3.1
这将使您的Ruby解释器在正确的位置搜索宝石,您需要拥有所有权限。
确保您的Apache作为具有在PassengerRuby "/home/coolma7/.rvm/gems"
内执行权限的用户运行,并在Apache的配置文件中正确设置/home/coolma7
和User
。
最后,你在Group
拥有宝石的事实意味着你正在使用系统Ruby。不建议这样做。在安装Ruby版本时尽量坚持RVM,你会遇到更少的问题。见this。也许this post也可以帮到你。