Ruby on Rails 找不到初始化程序?

Ruby on Rails 找不到初始化程序?

我正在尝试使用 Passenger 2.2.15、Rails 2.3.5、Ruby 1.8.7 和 Apache 2.2.14 将应用程序部署到全新的 Ubuntu 10 安装中。但是,即使使用默认的 rails 应用程序 ( sudo rails defaultapp),我也会收到以下错误:“没有要加载的文件 -- 初始化程序”。

我不确定您可能需要复制哪些文件来诊断这个问题,所以我将在这里复制一些文件,希望这会有所帮助。

感谢您的任何帮助,您可以提供。

-R M

/etc/apache2/站点可用/默认

    <VirtualHost *:80>
    ServerAdmin webmaster@localhost

    DocumentRoot /var/www/appname/public
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>



    ErrorLog /var/log/apache2/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /var/log/apache2/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost>

/etc/apache2/mods-available/passenger.conf

<IfModule passenger_module>
   PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.15
   PassengerRuby /usr/bin/ruby1.8
</IfModule>

/etc/apache2/mods-available/passenger.load

LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.15/ext/apache2/mod_passenger.so

答案1

Rails 没有安装到 /appname/vendor/rails 中,我通过运行sudo rake rails:freeze:edge RELEASE=2.3.5并相应地更改权限来安装它。令人不安的是,Ubuntu 需要 sudo 才能使用 Rails 执行所有操作,因此需要不断进行权限操作。

此外,这还导致了另一个错误:无法为 [] 激活 rack (= 1.2.1,运行时),已经为 [] 激活 rack-1.0.1,我仍在努力。

相关内容