Re: Problem about connecting PostgreSQL through TCP/IP - Mailing list pgsql-php

From Hui Chen
Subject Re: Problem about connecting PostgreSQL through TCP/IP
Date
Msg-id 923c3c14050818133930da1cf0@mail.gmail.com
Whole thread Raw
In response to Re: Problem about connecting PostgreSQL through TCP/IP  (Gnanavel S <s.gnanavel@gmail.com>)
List pgsql-php
Thanks a lot! If I typed the password wrong, I should be able to see a
corresponding entry in the log file. The entry should look like
"FATAL:  password authentication failed for user foo". However, I did
not see any entry corresponding to the failed connection at all.
Therefore, I ruled out the possibility that the wrong password was the
reason.

Gray

On 8/17/05, Gnanavel S <s.gnanavel@gmail.com> wrote:
>
>
>
> On 8/14/05, Hui Chen <gray.chenhui@gmail.com> wrote:
> > Hello, everyone,
> >
> > Can anyone help me? I am quite frustrating now. I have been trying to
> > connect PostgreSQL server through TCP/IP connection using PHP. I was
> > not successful. Could please read the following and give me some
> > hints. Thanks a million.
> >
> > OS: Fedora Core 4 ("uname -s -r" yields "Linux 2.6.12-1.1398_FC4smp")
> > PostgreSQL: version 8.0.3
> > PHP: version 5.0.4
> >
> > In postgresql.conf, these three lines were inserted,
> > listen_addresses = '*'
> > port = 5432
> > max_connections = 100
> >
> > The following lines were inserted to pg_hba.conf:
> > local   all         all
>     password
> > host    all         all         127.0.0.1/32            password
> > host    all         all         192.168.0.0/1          password
> >
> > restart posgresql by
> > /sbin/service postgresql restart
> > The server was restarted OK.
> >
> > The PHP script used to connect database is  as follows,
> > <?php
> >   $conn = pg_connect("host=localhost port=5432 dbname=foodb user=foo
> > password=foo") or die ("Can not connect to postgres");
> >    $result=pg_exec("SELECT * FROM footbl");
> >    $fetch = pg_fetch_row($result);
> >    print "<html><body>";
> >    print $fetch[0];
> >    print "<body></html>";
> >
> >    pg_close($conn); // Close this connection
> > ?>
> >
> > Assume this PHP script is named as "connectdb.php", then on
> > commandline, when I run the following,
> >                       php connectedb.php
> > I see correct results, e.g.,
> > <html><body>foo<body></html>
> >
> > On commandline again, I used the following to connect database,
> > psql -d foodb -h localhost -p 5432 -U foo
> > Password: ************
> Whether the password you typed here is "foo"?
>
> >
> > Welcome to psql 8.0.3, the PostgreSQL interactive terminal.
> >
> > Type:  \copyright for distribution terms
> >        \h for help with SQL commands
> >        \? for help with psql commands
> >        \g or terminate with semicolon to execute query
> >        \q to quit
> >
> > foodb=>
> >
> > It is OK. Then I disabled "iptables" temporarily for testing purpose by
> > /sbin/service iptables stop
> > Flushing firewall rules:
>  [  OK  ]
> > Setting chains to policy ACCEPT: filter                    [
>  OK  ]
> > Unloading iptables modules:
>  [  OK  ]
> >
> > On localhost, I tried this command,
> > telnet localhost 5432
> > after hit "enters", telnet exited. I checked postgresql_%S.log and see
> > "LOG:  invalid length of startup packet"
> > which means postgresql server indeed saw the telnet connection.
> >
> > I tried this on any of my other machines in the LAN, I observed the same
> thing.
> >
> > In summary, it seemed the postgresql allowed TCP/IP connection, and
> > worked well. However, when I ran the PHP script through web browser, I
> > did not get connection. Instead, in Apache web server's error_log, I
> > see
> > [client 192.168.1.10] PHP Warning:  pg_connect() [<a
> > href='function.pg-connect'>function.pg-connect</a>]: Unable to connect
> > to PostgreSQL server: could not connect to server: Permission
> > denied\n\tIs the server running on host "localhost" and
> > accepting\n\tTCP/IP connections on port 5432? in /foo/connectdb.php on
> > line 2
> >
> > Interestingly, when I checked the log file for postgresql again, it
> > did not have anything for this connection failure. It seemed the
> > connection did not send to the database server at all. However,
> > 1) I disabled firewall
> > 2) I can telnet the ports
> > 3) I can run the script from commandline
> >
> > What could go wrong?
> >
> > Thanks a lot for your reading this lengthy email. Waiting for your help!
> >
> > Gray
> >
> > ---------------------------(end of
> broadcast)---------------------------
> > TIP 4: Have you searched our list archives?
> >
> >                http://archives.postgresql.org
> >
>
>
>
> --
> with regards,
> S.Gnanavel
> Satyam Computer Services Ltd.

pgsql-php by date:

Previous
From: Gnanavel S
Date:
Subject: Re: Problem about connecting PostgreSQL through TCP/IP
Next
From: javier wilson
Date:
Subject: Re: Problem about connecting PostgreSQL through TCP/IP