На удаленном сервере СentOS стоит и работает PostgreSQL 9.2.18. Я могу подключиться к базе данных с локального компьютера через pgAdmin 3 c использованием SSH. Однако когда я открываю SSH туннель через Putty (туннель рабочий, команды в терминале Putty после открытия туннеля открываются) и пытаюсь открыть соединение в своем PHP-приложении, получаю следующую ошибку:
Warning: pg_connect(): Unable to connect to PostgreSQL server: expected authentication request from server, but received S
Код, который использую для подключения:
<?php
$db_connection = pg_connect("host=localhost port={локальный SSH порт} dbname={имя дб} user={пользователь дб} password={пароль} sslmode=disable");
?>
Если вместо локального SSH порта выставляю порт, на котором слушает PostgreSQL, получаю:
Warning: pg_connect(): Unable to connect to PostgreSQL server: could not connect to server: Connection refused (0x0000274D/10061) Is the server running on host "localhost" (::1) and accepting TCP/IP connections on port 5432? could not connect to server: Connection refused (0x0000274D/10061) Is the server running on host "localhost" (127.0.0.1) and accepting TCP/IP connections on port 5432?