sql >> Database teknologi >  >> RDS >> PostgreSQL

PHP Opret forbindelse til PostgreSQL ved hjælp af ssh2_tunnel

Beklager, det kommer ikke til at fungere på denne måde. ssh2_tunnel opretter en ekstern filpointer, også kaldet ressource, til brug i php-funktioner som fgets() , fwrite() osv. Det er ikke det samme med ssh port forwarding.

Du kan prøve at åbne ssh-tunnelen på din php-server fra skallen:ssh [email protected] -i ./ssh_key -L 5555:localhost:5432 . Mens sessionen er i live, bør du være i stand til at oprette forbindelse til databasen fra dit php-script som pg_connect("host=127.0.0.1 port=5555 dbname=dbname user=dbuser password=dbpass");

Det er selvfølgelig ikke til produktionsbrug. Det du skal bruge til produktion er at give adgang til databasen fra din php-applikationsserver. Du skal muligvis redigere postgresql.conf for at sikre, at serveren er bundet til korrekt grænseflade, og pg_hba.conf for at tillade forbindelser fra din php-vært.




  1. PDO positionelle og navngivne parametre som en del af den samme forberedte forespørgsel?

  2. Brugeropslag på krypterede databasefelter

  3. django karaktersæt med MySQL weirdness

  4. Hvordan genkender jeg en tekstfil fra min linux pc via django-kode uden at kontrollere dens udvidelse og også dens filstørrelse?