簡體   English   中英

在PHP中使用pg_connect()的錯誤500(致命錯誤)

[英]Error 500 ( Fatal Error ) using pg_connect() in php

我試圖使用pg_connect來訪問另一台服務器上的postgres,

我確實打開了遠程訪問,並且可以使用bash連接到我的postgres服務器! 而且我確實在配置中托管了所有所有client_ip / 32信任,但是當我嘗試使用pg_connect出現錯誤500! pgsql也已安裝,我已經用function_exists('pg_connect')進行了檢查,並且我返回true! 我的代碼是:

$dbconn = pg_connect("host=remote_IP port=5432 dbname=myDB user=postgres") or die("Could not connect");

我也嘗試過這個,再次出現致命錯誤500

    $dbconn = pg_connect("host=remote_IP port=5432 dbname=myDB
 user=another_super_user_i_made password=user_password") or die("Could not connect");

問題是什么 ?

當您能夠從網絡上的一台計算機連接到服務器,但又從另一台計算機獲得連接超時問題時,通常是由於以下原因之一。

1)DNS。 您要測試的計算機(稱為“遠程訪問”)能夠解析DNS名稱,而運行PHP代碼的網絡服務器則無法解析。 您可以使用實際的IP地址代替DNS名稱來進行測試。

2)連接。 網絡中不同的計算機以不同的方式連接。 如果您可以從“遠程訪問”計算機獲取IP,但是Web服務器無法連接到該IP(“連接超時”),請嘗試直接連接到該Web服務器(使用像SSH這樣的“遠程訪問” ),看看是否可以從那里手動連接。

如果不是與網絡相關的問題,則可能是您的默認PG超時問題。 嘗試使用連接字符串手動設置它們。 具體來說,“ connect_timeout”選項如下所示:

$d=pg_connect('host=example.com user=pgsql dbname=postgres connect_timeout=5');

出現主機阻止問題! 我的客戶端托管未啟用對DB的遠程訪問! 您應該向您的主機咨詢以確保他們可以跟蹤您的問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM