如何从我的网站访问我的基于lan的postgresql数据库

时间:2011-09-26 14:58:54

标签: c# php .net postgresql lan

我们有基于lan的.Net应用程序与Postgresql 8.1,现在我有任务提供网站上的接口,在基于LAN的数据库上读写两个表我不知道从哪里开始请帮我解决这个问题。< / p>

Lan:Windows NT 2003 。净 Postgresql 8.1

网站: PHP 5.3 MySQL的

3 个答案:

答案 0 :(得分:1)

您需要在Postgres上启用远程连接。但要注意安全隐患。

没有全部阅读,但this应该让您了解服务器上的步骤。对于连接器,通常只需要将连接功能指向远程IP。

答案 1 :(得分:1)

以下是如何做到这一点。复制自here

 <?php
// Connecting, selecting database
$dbconn = pg_connect("host=localhost dbname=publishing user=www password=foo")
    or die('Could not connect: ' . pg_last_error());

// Performing SQL query
$query = 'SELECT * FROM authors';
$result = pg_query($query) or die('Query failed: ' . pg_last_error());

// Printing results in HTML
echo "<table>\n";
while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
    echo "\t<tr>\n";
    foreach ($line as $col_value) {
        echo "\t\t<td>$col_value</td>\n";
    }
    echo "\t</tr>\n";
}
echo "</table>\n";

// Free resultset
pg_free_result($result);

// Closing connection
pg_close($dbconn);
?>

在上面的代码中,将 localhost 替换为Postgres主机的 IP地址

答案 2 :(得分:0)

在Linux上,需要修改两个文件以允许除localhost以外的连接: postgresql.conf,更改listen_addresses =“*”以接受来自任何地方的连接。然后在pg_hba.conf文件中添加一行,以允许从特定IP或网络访问数据库。如果您不担心安全问题,请输入:

托管所有192.168.1.0/24信任

将允许192.168.1.0/24网络上的任何人访问任何数据库。显然这应该只用于测试你可以到达数据库。将此约束到Web服务器IP地址并使用md5,以便使用加密密码身份验证。