4

我正在尝试在带有 Parallels Plesk Panel 11(64 位)的 CentOS 6 新虚拟机上托管 rails2 应用程序。我已经使用此处给出的步骤成功安装了 RVM、ruby、rails 和 passanger

我已正确执行所有步骤。我已经安装了ruby​​ 1.8.7rails 2.0.2

现在的问题是,我可以在新服务器的 3000 端口上使用 Webrick 服务器运行应用程序。那里一切正常。但是当我想用 apache 运行它时,它并没有运行。当我点击 url 它返回页面

未找到

在此服务器上找不到请求的 URL /account/login。Apache 服务器位于 www.mem.com 端口 80

这是我的 passanger.conf 文件:

/etc/httpd/conf.d/passenger.conf

    LoadModule passenger_module /usr/local/rvm/gems/ruby-1.8.7-p371/gems/passenger-3.0.19/ext/apache2/mod_passenger.so
   PassengerRoot /usr/local/rvm/gems/ruby-1.8.7-p371/gems/passenger-3.0.19
   PassengerRuby /usr/local/rvm/wrappers/ruby-1.8.7-p371/ruby

这是我的虚拟主机代码:

/etc/httpd/sites-available/mem.conf

    <VirtualHost *:80>
 ServerAdmin youremail@example.com
 DocumentRoot /var/www/mem/public
 ServerName www.mem.com
 ErrorLog /var/log/httpd/mem/error.log
 CustomLog /var/log/httpd/mem/access.log common
</VirtualHost>

任何建议将不胜感激。

4

6 回答 6

1

问题已解决。网络托管公司已经使用不同的文档根创建了一个虚拟主机。我将我的应用程序目录移动到该路径并启动了应用程序。谢谢大家的建议。

于 2013-02-18T09:14:17.240 回答
1

如果您设法设置DocumentRoot到错误或不存在的目录,您也可能会看到这一点。如果您无法弄清楚这一点,请仔细检查它是否存在。

于 2014-11-20T17:55:27.363 回答
0

尝试在您的 VirtualHost 中添加此目录块

<Directory /var/www/mem/public>
    Allow from all
    Options -MultiViews
</Directory>
于 2013-02-06T12:47:51.317 回答
0

我自己也遇到了同样的问题,尽管在 rhel 6.2(64 位)和 ruby​​-1.8.7 上使用了 rails3 应用程序和 https。我通过在 /etc/httpd/conf.d/myapp.conf 的末尾添加以下行(在“VirtualHost”部分之后)解决了我的问题:

    PassengerPreStart https://<url-to-my-rails-app>

重新启动 apache 后,我的应用程序会正确显示。

您可以从 apache 的乘客用户指南中找到更多信息:http ://www.modrails.com/documentation/Users%20guide%20Apache.html#User_switching

于 2013-02-08T18:25:20.653 回答
0

我正在运行带有 Apache 和乘客模块的 CentOS 6 机器。我的站点配置位于该/etc/httpd/sites-enabled/文件夹中。这是我的conf:

# /etc/httpd/sites-enabled/hello-world.conf
<VirtualHost *:80>
    ServerName hello-world.localhost
    DocumentRoot /var/www/hello/public
    <Directory /var/www/hello/public>
        Allow from all
        Options -MultiViews
    </Directory>
</VirtualHost>

永远记得重启apache:

$ sudo apachectl restart

希望这可以帮助你。祝你好运。

于 2013-02-06T15:33:44.233 回答
-5

禁用 selinux。

答案必须至少为 30 个字符。

于 2013-06-15T11:41:55.527 回答