【发布时间】:2012-06-19 13:13:51
【问题描述】:
在将 Heroku 应用程序的 rails 3.1 升级到 3.2.6 方面取得了很大进展。
我使用asset_sync 并将资产预编译到S3 上。我使用asset_sync.rb 初始化程序来配置我的S3 连接详细信息。
尝试运行时出错
RAILS_ENV=production bundle exec rake assets:precompile
AssetSync: using /Users/bob/work/myapp/config/initializers/asset_sync.rb
rake aborted!
could not connect to server: Permission denied
Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?
Tasks: TOP => environment
(See full trace by running task with --trace)
rake aborted!
Command failed with status (1): [/Users/bob/.rvm/rubies/ruby-1.9.3-p...]
这很奇怪。我检查了它正在按照Postgres permission denied on MAC OS X那个问题和相关的cmets收听。
【问题讨论】:
-
rake 命令,例如 rake db:reset 工作正常。除非我指定 psql -h localhost postgres postgres ,否则在命令行中键入 psql 会给出完全相同的错误 - 尝试做什么? asset_sync.rb 包含我的 Amazon S3 凭证 - 为什么会出现此错误?完整的堆栈跟踪意味着它的活动记录 3.2.6:
-
耙子中止!无法连接到服务器:权限被拒绝服务器是否在本地运行并接受 Unix 域套接字“/var/pgsql_socket/.s.PGSQL.5432”上的连接? /Users/bob/.rvm/gems/ruby-1.9.3-p0@rails32/gems/activerecord-3.2.6/lib/active_record/connection_adapters/postgresql_adapter.rb:1206:in
initialize' /Users/bob/.rvm/gems/ruby-1.9.3-p0@rails32/gems/activerecord-3.2.6/lib/active_record/connection_adapters/postgresql_adapter.rb:1206:innew' ... -
如果我将 host: localhost 从 database.yml 中取出,我会在 Rails 控制台等命令上得到相同的错误。一旦进入,尽管这些命令可以正常工作,但资产预编译仍然会因上述原因而失败。
标签: ruby-on-rails heroku amazon-s3 assets