Przepraszamy, to nie zadziała w ten sposób. ssh2_tunnel
tworzy zdalny wskaźnik pliku, aka zasób, do użycia w funkcjach php, takich jak fgets()
, fwrite()
itp. To nie to samo z przekierowaniem portów ssh.
Możesz spróbować otworzyć tunel ssh na serwerze php z powłoki:ssh [email protected] -i ./ssh_key -L 5555:localhost:5432
. Podczas trwania sesji powinieneś być w stanie połączyć się z bazą danych ze swojego skryptu php jako pg_connect("host=127.0.0.1 port=5555 dbname=dbname user=dbuser password=dbpass");
Oczywiście nie jest przeznaczony do użytku produkcyjnego. To, czego potrzebujesz do produkcji, to umożliwienie dostępu do bazy danych z serwera aplikacji php. Być może trzeba będzie edytować plik postgresql.conf
aby upewnić się, że serwer jest powiązany z poprawnym interfejsem i pg_hba.conf
aby zezwolić na połączenia z hosta php.