在php-fpm / CentOS6上使用pg_connect返回false

时间:2015-12-02 03:44:21

标签: php postgresql centos6 php-pgsql

我现在在CentOS / nginx / postgresql / php(php-fpm)上开发一个网站。

问题:

我有这样的数据库连接代码阻止:

$dbcon = pg_connect(
    "host=localhost port=5432 dbname=shex_utf8 user=webmaster password=webmaster"
);
var_dump($dbcon);

当我在访问http://example.com/dbcon.php

时运行该代码时,它只返回false

我没有看到任何错误或警告显示。

直接执行php脚本:SUCCESS

但如果我打电话:

php < dbcon.php

它回来了:

  

类型的资源(5)(pgsql链接)

使用httpd:FAIL

我将http服务器从nginx更改为httpd,问题仍然存在。

使用spawn-fcgi:SUCCESS

然后我停止php-fpm服务,然后运行spawn-fcgi,没有问题。

问题:

php-fpm有什么问题?如何配置 php-fpm 并解决问题?

1 个答案:

答案 0 :(得分:2)

那是因为selinux设置。

通过以下方式解决:

setsebool -P httpd_can_network_connect_db 1