Php postgresql配置在Codeigniter中提供一个空白页(连接失败)

Php postgresql配置在Codeigniter中提供一个空白页(连接失败),php,codeigniter,postgresql,Php,Codeigniter,Postgresql,我刚刚使用CodeIgniter框架和PostgreSQL为数据库创建了PHP应用程序,它在本地主机上运行良好。然后我将应用程序移动到服务器(xxx.xxx.1.77),但当我尝试运行时,它给出了一个空白页面 我删除了autoload.php中的所有库和包,运行良好。所以我把它一个接一个地放好,然后在我放好每个库/包之后运行它。最后,我发现了问题:数据库 这一个将显示欢迎页面(默认),但当我调用连接到模型的控制器时,它将显示一个空白页面 $autoload['libraries'] = arra

我刚刚使用CodeIgniter框架和PostgreSQL为数据库创建了PHP应用程序,它在本地主机上运行良好。然后我将应用程序移动到服务器(xxx.xxx.1.77),但当我尝试运行时,它给出了一个空白页面

我删除了autoload.php中的所有库和包,运行良好。所以我把它一个接一个地放好,然后在我放好每个库/包之后运行它。最后,我发现了问题:数据库

这一个将显示欢迎页面(默认),但当我调用连接到模型的控制器时,它将显示一个空白页面

$autoload['libraries'] = array('session', 'form_validation');
这一页将在第一页显示空白页(欢迎/默认页将不显示)

这是我的数据库配置:

$db['default']['hostname'] = '192.168.1.4';
$db['default']['port'] = '8432';
$db['default']['username'] = 'postgres';
$db['default']['password'] = '';
$db['default']['database'] = 'gstseminar';
$db['default']['dbdriver'] = 'postgre';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
当我尝试在本地主机上运行应用程序时,该配置没有问题


有人知道我的问题吗?非常感谢您的回答。

当我今天尝试运行项目时,我不知道如何以及为什么我的项目运行良好。我查看了config/database.php,发现了如下配置:

$active_group = 'default';
$active_record = TRUE;

$db['default']['hostname'] = '192.168.1.4';
$db['default']['port'] = '8432';
$db['default']['username'] = 'postgres';
$db['default']['password'] = '';
$db['default']['database'] = 'gstseminar';
$db['default']['dbdriver'] = 'postgre';
$db['default']['dbprefix'] = 'tb_';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
在我的config/autoload.php上有:

$autoload['libraries'] = array('session', 'form_validation', 'database');

现在运行良好。谢谢。

我认为您使用的端口是错误的 试试这个:

$db['default']['port'] = '5432';

我认为postgre的默认端口可能与您的
pg_hba.conf
文件有关。默认情况下,Postgres可能无法从外部打开。此外,postgresql的某些安装默认为仅在本地主机上侦听。检查postgresql.conf中的设置
listen\u addresses='*'
$db['default']['port'] = '5432';