くるみ
no pg_hba.conf…っていうエラー出たんだけど
- 「no pg_hba.conf entry for host」というエラーが消せず困っている
という方に向けて「no pg_hba.conf entry for hostの対処法」をまとめました。
ブログ主の備忘録代わりでもありますが参考になれば幸いです⸝⸝- ̫ -⸝⸝
no pg_hba.conf entry for hostの対処法
結論
早速結論から。
const sequelize = new Sequelize(
'データベース名',
'ロール名',
'パスワード',
{
host: 'ホスト名',
dialect: 'postgres',
dialectOptions: {//以下を追加
ssl: {
require: true,
rejectUnauthorized: false
}
}
});
以上のように変更してあげるとエラーは成仏してくれました。8行目以降の部分です。
no pg_hba.conf entry for hostの原因
肝心な事はエラーメッセージの最後にちゃんと載っていました。そう「SSL off」の箇所です。
つまりSSL接続を有効にしてあげればよいとのこと。
案外単純じゃん!
くるみ
「SSL off」だけだと解決しない場合もある
dialectOptions: {
ssl: true
}
しかし上記のようにSSLをtrueにするだけで解決しない場合もあるようで、「rejectUnauthorized: false」も必要になってくるとのこと。
詳しくは分かりかねますが、「rejectUnauthorized」はSSL証明書云々の設定だそうです。
参考 sequelize connectionerror self signed certificatestack overflow ちなみにブログ主の場合はrequireをtrueにしただけだとエラーのままでした。
まとめ
参考になれば幸いです!では⸝⸝- ̫ -⸝⸝