gpt4 book ai didi

ruby-on-rails - Apache2 的 Rails 乘客问题

转载 作者:行者123 更新时间:2023-12-03 12:02:45 25 4
gpt4 key购买 nike

我正在尝试使用 apache2 和 mod_rails(Phusion Passenger)在 ubuntu10.10 上的 rails 服务器上设置一个 ruby​​。

我已经安装了 ruby​​ 1.9.2-p0 和 rails 3.0.8 并安装了带有 Passenger-install-apache2-module 和乘客 gem (v3.0.7) 的乘客。

然后它告诉我在我的 Apache 配置文件中添加 3 行。所以我将这些行添加到'/etc/apache2/apache2.conf':

LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.7/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/gems/1.9.1/gems/passenger-3.0.7
PassengerRuby /usr/local/bin/ruby

我编辑了我的“/etc/apache2/httpd.conf”并添加了:
NameVirtualHost *:80

<VirtualHost *:80>
ServerName 192.168.0.2
DocumentRoot /var/www/webop/public

<Directory /var/www/webop/public>
Allow from all
Options -MultiViews
</Directory>
</VirtualHost>

我还发现/usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.7/ext/apache2/中的文件mod_passenger.so实际上是不存在的,它的名字是mod_passenger.c。但我没有从中得到任何错误。

服务器应该只能通过 LAN 访问。当我访问服务器时,我看到我的应用程序公用文件夹中的所有文件和目录,但应用程序本身没有启动。

当我重新启动 apache 时,它​​告诉我 mod_rails 已经加载,所以我猜乘客正在运行,但我不知道为什么它没有启动我的应用程序!

提前致谢!

最佳答案

mod_passenger.so 不存在的原因是因为您没有安装 Apache 模块。执行:

passenger-install-apache2-module

这将在您的 gem 目录中创建 mod_passenger.so 文件,并为您提供三行复制到您的 apache2.conf 文件中。

乘客模块安装在您当前的 gemset 中,因此您不应该在项目之间遇到任何冲突。您可以使用任何兼容版本的 Ruby,以及您喜欢的任何 gemset,通过 RVM,也可能通过 RBENV。这为从一个版本的 Ruby 升级到下一个版本提供了一条非常简单的升级路径。

关于ruby-on-rails - Apache2 的 Rails 乘客问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6316875/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com