sql >> Databasteknik >  >> RDS >> PostgreSQL

PHP Anslut till PostgreSQL med ssh2_tunnel

Tyvärr, det kommer inte att fungera på det här sättet. ssh2_tunnel skapar en fjärrfilpekare, aka resurs, som ska användas i php-funktioner som fgets() , fwrite() etc. Det är inte samma sak med ssh port forwarding.

Du kan försöka öppna ssh-tunneln på din php-server från skalet:ssh [email protected] -i ./ssh_key -L 5555:localhost:5432 . Medan sessionen är vid liv bör du kunna ansluta till databasen från ditt php-skript som pg_connect("host=127.0.0.1 port=5555 dbname=dbname user=dbuser password=dbpass");

Det är naturligtvis inte för produktionsbruk. Vad du behöver för produktion är att tillåta åtkomst till databasen från din php-applikationsserver. Du kan behöva redigera postgresql.conf för att säkerställa att servern är bunden till korrekt gränssnitt och pg_hba.conf för att tillåta anslutningar från din php-värd.




  1. Söker efter datumintervallkonflikter i MySQL

  2. SSMS 2016-fel vid import av Azure SQL v12 bacpac:huvudnycklar utan lösenord stöds inte

  3. Välj alternativmeny läs från databasen och använd dess värden

  4. SQL Server välj slumpmässigt (eller första) värde med aggregering