как получить доступ к моей базе данных postgresql db с моего сайта - PullRequest
0 голосов
/ 26 сентября 2011

У нас есть приложение .Net на основе локальной сети с Postgresql 8.1, теперь у меня есть задача предоставить интерфейс на веб-сайте для чтения и записи двух таблиц в базе данных на основе локальной сети. Я не знаю с чего начать. Помогите мне решить эту проблему.

LAN: Windows NT 2003. Net Postgresql 8.1

Веб-сайт: PHP 5.3 Mysql

Ответы [ 3 ]

1 голос
/ 26 сентября 2011

Вот как это сделать. Скопировано из здесь :

 <?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 на IP-адрес вашего хоста Postgres .

1 голос
/ 26 сентября 2011

Вам необходимо включить удаленные подключения на Postgres.Но будьте осторожны с последствиями для безопасности.

Не прочитал все это, но это должно дать вам представление о шагах, которые необходимо предпринять на сервере.Для разъема вам обычно нужно просто указать функцию подключения на удаленном IP-адресе.

0 голосов
/ 26 сентября 2011

В Linux необходимо изменить два файла, чтобы разрешить подключения, отличные от localhost: postgresql.conf, изменить listen_addresses = "*", чтобы принимать подключения из любого места.Затем добавьте строку в файл pg_hba.conf, чтобы разрешить доступ к базе данных с определенного IP-адреса или сети.Если вы не беспокоитесь о безопасности, введите:

host all all 192.168.1.0/24 trust

разрешит любому пользователю сети 192.168.1.0/24 доступ к любой базе данных.Очевидно, это следует использовать только для проверки того, что вы можете связаться с базой данных.Ограничьте это IP-адресом веб-серверов и используйте md5, чтобы использовать аутентификацию с использованием зашифрованного пароля.

...