繁体   English   中英

Rails3,apache,乘客无法正常工作。 但是rails2应用程序可以在同一环境中工作

[英]Rails3, apache, passenger not working. But rails2 app works in same env

ENV:

  • OpenSUSE 11.4
  • 阿帕奇2.2.17
  • 乘客3.0.18
  • Ruby 1.8.7
  • Rails 3.2.8

我已经在apache- ChiliProject下安装了RoR应用程序(但使用rails ChiliProject ),并且工作正常。

它安装在/chiliproject和httpd配置中(由于没有虚拟主机,所以实际上在默认服务器中),我安装了“ RailsBaseURI / chiliproject / public”。

现在,我需要开发自己的应用程序(Web开发的首次经验)。

“ rails new hello_world”,Webrick可以正常工作,但是我想在CGI的Apache下运行它。 我添加了“ RailsBaseURI / hello_world / public”。 但是它不能正常工作。 当我在索引页面上按“关于您的应用程序环境”时,它会显示404“您要查找的页面不存在。”。 对于rails中的任何路由,它都会给出错误500或404。但是相同的路由和控制器可以与webrick一起正常工作。 即使我将ChiliProject放入/ hello_world,它也可以工作。 这意味着问题不在于阿帕奇或乘客。

日志中没有apache / passenger错误,只有404或500。我尝试了“ rails 2.4.13 new hello_world”,但是它给了我很多错误,简单的谷歌搜索并不能解决所有问题。 因此,我无法轻松地使用Rails 2.4.13创建一个新项目,该项目可与另一个应用程序很好地工作,而且我认为这无济于事。

我在ruby网站上读到1.8.7可能会导致rails3崩溃。 之后,我花了4个小时研究RVM和不同的ruby版本。 毕竟,ChiliProject(甚至最新版本)也无法与ruby 1.9一起使用,并且我原来的问题没有消失。 现在我有了所有的东西(发行版仓库中的红宝石1.8.7,没有RVM)。

如果您的webbrick正常工作,请对您的apache配置文件进行一些较大的更改。

我在下面使用bitnami RubyStack和配置,没有任何问题:

<VirtualHost *:80>
    ServerName www.myhostname.com
    DocumentRoot /home/bitnami/app_name/public  
    RailsEnv development
    <Directory /home/bitnami/app_name/public>
        Allow from all
        Options -MultiViews
    </Directory>
</VirtualHost>

我的乘客版本:

:~$sudo passenger-config --root
/opt/bitnami/ruby/lib/ruby/gems/1.9.1/gems/passenger-3.0.17

请检查乘客是否在奔跑:

:~$sudo passenger-status

----------- General information -----------
max      = 6
count    = 2
active   = 0
inactive = 2
Waiting on global queue: 0

----------- Application groups -----------
/home/bitnami/app_1:
  App root: /home/bitnami/app_1
  * PID: 4972    Sessions: 0    Processed: 24      Uptime: 33h 38m 14s

/home/bitnami/app_2:
  App root: /home/bitnami/app_2
  * PID: 24538   Sessions: 0    Processed: 1682    Uptime: 296h 14m 44s

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM