Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

Re: PHP/postgreSQL



So the setup is as follows:

I have a web server hosted by stormweb that runs the PHP scripts. On one of my
local machines behind a router, I have a postgreSQL server service setup.

If I run pgAdminIII on the postgreSQL server machine using the external IP to
connnect (24.85.82.xxx), it works ONLY with these postgreSQL server settings:

# TYPE DATABASE USER CIDR-ADDRESS METHOD
host all all 0.0.0.0/0 trust

(I believe this is the setting that makes "sure pgsql is listening on tcp/ip")

I have enabled port forwarding on my router to forward 5432 to the proper
machine. Additionally, when I was starting, I was not able to connect from my
local server machine to itself via 24.85.82.xxx until I allowed the 5432 port
to pass through the window's firewall. (I've tried disabling that as well)

Given that it connects, can I assume that it's taking an external route to get
there and that shaw is allowing this traffic? (otherwise the firewall wouldn't
have any effect?)

Are there any possible problems from the web server machine that might be
preventing the connection?


Quoting "Gavin M. Roy" <gmr(at)ehpg(dot)net>:

Are you sure your isp isn't blocking access? First thought to come to mind is shaw cable might be blocking port 5432. Can you try and telnet to the box from your server on port 5432? Also check to make sure pgsql is listening on tcp/ip. Also if you're a home shaw customer, are you behind a nat router? Have you opened up access on the nat router to get to your box behind it?

HTH,

Gavin

On Feb 4, 2006, at 2:14 PM, vince(at)weaktight(dot)com wrote:

I'm running PHP/mySQL via a web hosting service. I require my PHP scripts to
access an external PostgreSQL database.

I have the PostgreSQL server setup to accept connections from anyone:
[pg_hba_conf]

# TYPE DATABASE USER CIDR-ADDRESS METHOD
host all all 0.0.0.0/0 trust

[--]

I've tested this connection via pgAdminIII and I'm able to connect using this
IP, but when I try to connect via php from the hosted webpage...

My php script is simple:

<?php
$conn_string = "host=24.85.82.xxx port=5432 dbname=PGSQL1  user=postgres
password=xxx";

$dbconn = pg_connect($conn_string);

if ($dbconn) {

print "Successfully connected to: " . pg_host($dbconn) . "<br/>\n";

} else {

print pg_last_error($dbconn);
exit;
}

pg_close($dbconn);
?>

But I'm foiled by:

Warning: pg_connect(): Unable to connect to PostgreSQL server: could not connect to server: Operation timed out Is the server running on host "24.85.82.xxx" and
accepting TCP/IP connections on port 5432? in
/usr/local/psa/home/vhosts/weaktight.com/httpdocs/mytest.php on  line 13

Any thoughts or suggestions would be greatly appreciated. I'm not very
experienced with any of this stuff.

Thanks.


---------------------------(end of  broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster


---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
      subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
      message can get through to the mailing list cleanly







Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group