0

我是一个全新的 Rails 用户,我正在关注本教程 - http://ruby.railstutorial.org/chapters/a-demo-app#top。在本地服务器上访问演示应用程序(来自第 2 章)没有问题。但是在部署到我的 Linode 服务器时遇到问题。这是我所做的:

  1. 将本地应用推送到 BitBucket
  2. 将 Linode 上的 repo 克隆到:/srv/www/preziki/first_app
  3. 捆绑安装
  4. 耙分贝:迁移
  5. 为 preziki 更新 VirtualHost:

    ServerAdmin oleg@preziki.com ServerName preziki.com ServerAlias www.preziki.com DocumentRoot /srv/www/preziki/first_app/public ErrorLog /srv/www/preziki/logs/error.log CustomLog /srv/www/preziki/logs/ access.log 结合

  6. a2ensite preziki

  7. 重启阿帕奇
  8. 重新加载阿帕奇

如果我访问 www.preziki.com(或 176.58.104.181),我会看到默认的 Rails“欢迎加入”页面。如果单击“关于您的应用程序环境”链接,则会收到“抱歉,但出现了问题”错误。如果我访问 www.preziki.com/users(就像我可以访问 localhost/users 一样),我会收到“抱歉,但出了点问题”错误。

如果我将 VirtualHost 指向我有“Hello world!”的目录。index.html 文件,然后 preziki.com 可以毫无问题地显示它。

我究竟做错了什么?

谢谢你。

4

2 回答 2

1

首先您可以看到“默认 Rails”环境,这意味着检查您的 Web 服务器(apache)是否工作正常。因为它是一个静态请求。

第二件事,当您想进入应用程序环境时,它们是一个问题,意味着您的应用程序没有正确部署。

你需要检查的东西很少。

1. Give the application directory all permission.
2. bundle install properly
3. Set RailsENV in virtual host
4. rake db:migrate properly.
5. Check your log file what problem it is showing.



<VirtualHost *:80>
      ServerName localhost
      DocumentRoot /home/user/project/trunk/public
      PassengerEnabled on
      RailsEnv development
      <Directory /home/user/project/trunk/public>
      </Directory>
</VirtualHost>
于 2012-07-13T02:59:57.297 回答
0

It sounds like you're nearly there. My guess is that the app has a problem connecting to the database. But to see for yourself what the problem is, look in the production log file:

/srv/www/preziki/first_app/log/production.log

That will usually tell you everything you need to know. Another thing you can do to debug is to use the console on the server, in production mode:

bundle exec rails console production
于 2012-07-12T03:36:30.490 回答