【问题标题】:Ror app not running on CentOSRor 应用程序未在 CentOS 上运行
【发布时间】:2015-06-30 00:08:06
【问题描述】:

我第一次使用 CentOS 6.6 来部署 Rails 4 应用程序。我已经安装了所有必要的软件,如 MySQL、Ruby、Rails、Passenger、Apache2 等。我已经在 /var/www/html/index.html 内的 index.html 页面上对其进行了测试,并将其设置为 Apache 配置并完美运行。

当我部署 Rails 应用程序时,它确实在服务器上运行,但显示如下屏幕截图所示。

以下是我到目前为止所做的 Apache 配置设置。

/etc/httpd/conf/httpd.conf

  LoadModule passenger_module /home/user/.rvm/gems/ruby-2.1.2/gems/passenger-5.0.6/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
    PassengerDefaultRuby /home/user/.rvm/wrappers/ruby-2.1.2/ruby
    PassengerRoot /home/user/.rvm/gems/ruby-2.1.2/gems/passenger-5.0.6
</IfModule>

我在 /etc/httpd/conf.d/ 中创建了一个文件 vhost.conf

<VirtualHost *:80>
  ServerName myipaddress
  DocumentRoot /var/www/html/projectname/public_html/current/public
  <Directory /var/www/html/projectname/public_html/current/public>
     # This relaxes Apache security settings.
     AllowOverride all
     # MultiViews must be turned off.
     Options -MultiViews
     # Uncomment this if you're on Apache >= 2.4:
     #Require all granted
  </Directory>

我在命令下面运行命令

service httpd restart 
service httpd reload

Rails 应用程序没有在服务器中运行,也没有显示任何错误。

任何解决方案将不胜感激。提前致谢。

【问题讨论】:

    标签: ruby-on-rails apache passenger centos6 centos6.5


    【解决方案1】:

    首先并始终检查 Apache 日志。这一步是必不可少的,但经常被忽视。如果这没有帮助,我会尝试一些事情:

    仔细检查the documentation 并确保您已完全安装Passenger,并且没有跳过任何步骤。

    首先删除IfModule 指令。由于您需要乘客,因此如果未加载,您需要一条错误消息。

    LoadModule passenger_module /home/user/.rvm/gems/ruby-2.1.2/gems/passenger-5.0.6/buildout/apache2/mod_passenger.so
    PassengerDefaultRuby /home/user/.rvm/wrappers/ruby-2.1.2/ruby
    PassengerRoot /home/user/.rvm/gems/ruby-2.1.2/gems/passenger-5.0.6
    

    您将 IP 地址作为服务器名称。确保这不会与任何其他配置(其他站点或 httpd.conf)冲突。否则,您可能只是在加载不同的页面/应用程序。

    根据您的设置方式,您可能会遇到权限问题,因为您将PassengerDefaultRubyPassengerRoot 指向/home/user/.rvm。按照惯例,这些通常在更公开的地方,例如 /var/lib/gems//usr/bin/

    确保您在 Rails 应用程序的 config/routes.rb 中定义了 root 路径。

    确保您已chown -R-ed 将您的应用程序路径传递给 apache 用户。这将帮助您进行故障排除和安全性。

    完成所有操作后,再次检查日志。进行更改后,再次检查日志。

    【讨论】:

    • 感谢您的回答。是的,你是对的,存在一些权限问题。我再次以 root 用户身份安装了所有内容并为我工作。
    猜你喜欢
    • 1970-01-01
    • 2015-11-30
    • 1970-01-01
    • 2018-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-11
    相关资源
    最近更新 更多