我已经成功地将与Capistrano部署的Rails应用程序部署到运行NGinx & Passenger的服务器。在部署时,我收到了“我们很抱歉,出错了”消息&相当困惑,因为生产日志是空白的。然后我切换到rails_env
在development
NGINX我CONF &现在我越来越:Capistrano Rails应用程序SQLite3无法打开数据库
SQLite3::CantOpenException
unable to open database file
Rails.root: /www/testcap/releases/20120407015032
我登录到服务器,到current
文件夹中testcap
(我相信符号链接到最新版本),然后跑掉rake db:create
,但是存在数据库文件。查看应用程序的db
文件夹后,我看到development.db
& test.db
。
如果我运行rails s -e production
,然后前往myurl.com:3000该应用程序运行完全正常,这很奇怪,并且它也工作正常,当我运行rails s -e development
太。
我完全丧失了什么问题可能在这里。我敢肯定这肯定是一个相对明显的问题,可能与卡皮斯特拉诺?我还是一个新手,所以我可以错过任何东西,但是迄今为止使用谷歌搜索一直没有结果。
我能想到的唯一的事情是我没有明确地与我的config/deploy.rb
中的数据库相关?不过,我还没有找到网上的任何指南来帮助到目前为止。
在此先感谢您的帮助:)
杰克。
可能是文件权限问题?要测试,请尝试chmod 777'db文件,然后查看它是否有效? – benlumley 2012-04-07 09:07:36
你可以运行'cap deploy:migrate'吗?如果文件存在,权限听起来可能是无法打开错误的答案。 – 2012-04-07 09:16:20