我是一个全新的Rails用户,我正在关注本教程 - http://ruby.railstutorial.org/chapters/a-demo-app#top。在本地服务器上访问演示应用程序(来自第2章)没有问题。但是在部署到我的Linode服务器时出现问题。这就是我所做的:
为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合并
a2ensite preziki
如果我访问www.preziki.com(或176.58.104.181),我会看到默认的Rails“Welcome on board”页面。如果单击“关于您的应用程序环境”链接,则会出现“抱歉但出错”错误。如果我去www.preziki.com/users,(就像我可以与localhost / users一样),我会得到“抱歉但出了问题”的错误。
如果我将VirtualHost指向我有“Hello world!”的目录。 index.html文件,然后preziki.com显示它没有问题。
我做错了什么?
谢谢。
答案 0 :(得分: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>
答案 1 :(得分:0)
听起来你几乎就在那里。我的猜测是该应用程序在连接数据库时出现问题。但要亲自了解问题所在,请查看生产日志文件:
/srv/www/preziki/first_app/log/production.log
这通常会告诉你需要知道的一切。您可以执行的另一项调试是在生产模式下使用服务器上的控制台:
bundle exec rails console production