我是Rails和Apache的新手。我按照教程创建了新的rails应用程序,并尝试使用Passenger进行部署。
我生成了一个脚手架,创建了+迁移的数据库,并且它已经在localhost:3000上工作了。
我安装了apache2和乘客,启用了mod乘客,我可以看到通常的#34;欢迎乘坐/你正在使用Ruby on Rails!" localhost上的页面:80也是。但我无法访问localhost / posts页面,而我可以访问localhost:3000 /帖子。 (我看到" 500内部服务器错误"页面,而不是公共文件夹中的404/422/500页面之一)。我也没有在端口#80上的索引页面(assets / rails.png)上看到rails图像 - 在端口#3000上一切正常。
我将RackEnv开发人员和RailsEnv开发人员添加到虚拟主机文件中。当我重新启动时,Apache在屏幕上没有错误输出 - 当我说a2dismod乘客时合理地给出了错误:"无效的命令' RackEnv'"。所以我假设乘客在工作。
我相信apache不会读取除公共文件夹之外的文件夹,我尝试使用权限和所有权而没有成功。
有人有线索吗?
由于
编辑:我做了rake db:创建RAILS_ENV =生产 rake db:migrate:reset RAILS_ENV = production
并从vhost文件中删除了RackEnv / RailsEnv行,并重新启动了apache。现在我在localhost / posts上看到public / 500.html。它仍在使用localhost:3000 / posts
日志:rails日志文件仅包含
迁移至CreateDenemes(20120316021657)
apache错误日志
[Thu Mar 15 22:22:03 2012] [notice] Digest:为摘要认证生成秘密...... [Thu Mar 15 22:22:03 2012] [notice] Digest:done [Thu Mar 15 22:22:04 2012] [notice] Apache / 2.2.20(Ubuntu)DAV / 2 Phusion_Passenger / 3.0.11 mod_ssl / 2.2.20 OpenSSL / 1.0.0e配置 - 恢复正常运行 小号
和other_vhosts ...日志为空
V主机文件:
VirtualHost *:80
ServerName sencer
DocumentRoot /home/sselcuk/sencer/public
Directory /home/sselcuk/sencer/public
AllowOverride all
Options -MultiViews
/Directory
/虚拟主机
答案 0 :(得分:1)
我需要你的日志文件,包括Rails和apache日志。
Rails日志文件:请参阅:RAILS_ROOT / log / production.log
apache日志文件:请参阅/ var / log / apache2(在ubuntu中)
一旦获得该信息,我们就可以为您调试。