に遭遇した供給されていません私database.ymlのfe_sendauth:パスワードはここで</p> <p>が関連している...私は多くの人がこの問題に遭遇してきたけど、私は私がアマゾンRDSを使用していますので、私が行うことができますPostgresの構成の限られたよアマゾンRDSで
default: &default
host: <%= ENV["POSTGRES_HOST"] %>
username: <%= ENV["POSTGRES_USER"] %>
password: <%= ENV["POSTGRES_PASSWORD"] %>
adapter: postgis
encoding: unicode
database: <%= ENV["POSTGRES_DB"] %>
port: 5432
pool: 5
のセクションIがあるように、ハードコードホストは、他のすべてを残し、かつ負荷はlocalhost:3000、私はfe_sendauth: no password supplied
エラーを取得します。しかし、ENV変数を使用する代わりにすべての値をハードコードすると、エラーなしですべてが正常にロードされます。
私はAmazon RDSを使用していますので、pg_hba.confを編集する能力はありませんが、これはRoRがENV変数にアクセスできないという単純な問題ですか?
通常、UNIX環境変数は、対話シェルを開始するときに読み込まれるファイル(bashシェルの〜/ .bashrcファイル、zshシェルの.zshrc)に設定されます。 環境変数が設定されているかどうかをチェックするには、 'echo $ POSTGRES_USER'を実行し、他の環境変数と同じ値を返すかどうかを確認してください。 そうでない場合は、termianalの 'export POSTFRES_USER =" YOUR_POSTGRES_USERNAME "' を実行してください。新しいシェルを開くか、端末アプリケーションを再起動して続行する必要があります。 上記のコマンドを/ etc/environmentファイルに入れて、システムを再起動するたびに変数をロードすることもできます。 – Meer