[英]pgsql.so is not loaded in PHP
我的任务是创建一个访问现有PostgreSQL数据库的PHP应用程序。 这是我第一次使用Postgre,更不用说PHP已经安装在应该运行应用程序的Linux机器中。 我没有设置这些东西的经验,我只是编码。
我的问题是我似乎无法使用PHP进行Postgre扩展。 我检查了php.ini文件,没有“extension = ...”行。 所以我添加了“extension = pgsql.so”。 然后我检查了“extension_dir”,发现那里只有2个文件(ldap.so,phpcups.so),我添加了一个从另一个Linux盒子中取出的pgsql.so文件。 我重启了httpd。 它不起作用。 我在phpinfo()中找不到任何“pgsql”或“postgre”。
原谅我的无知。 我知道Linux太少了。 如果你能指出我正确的方向,我将非常感激。
我使用了number5给出的建议:
伙计,我在RedHat上。 我使用了你给出的命令的“yum”版本,我得到了这个:
[root @ perseus~] #yum install php-pgsql加载“installonlyn”插件设置安装过程设置存储库无法检索镜像列表http://mirrorlist.centos.org/?release=5&arch=x86_64&repo=extras错误是[Errno 4] IOError:错误:无法为repo:extras找到有效的baseurl
不幸的是,我正在使用的Linux服务器没有连接到Internet。 还有其他安装方法吗?
这取决于您使用的是哪个Linux发行版。
如果您使用的是Ubuntu / Debian,则需要:
sudo apt-get install php5-pgsql
Fedora的/ CentOS的
yum install php-pgsql
通常你可以找到你所在的发行版:
ls /etc/*-release
在CentOS扩展上,在/etc/php.d中为每个php扩展创建一个单独的* .ini文件
所以,不要改变main * .ini文件,而是创建/etc/php.d/pgsql.ini并添加一行
extension=pgsql.so
然后你需要重启Apache
service httpd restart
但最好的自动化方式就是打字
yum install php-pgsql
在您的情况下由于yum配置中的一些问题而无效。 转到/etc/yum-repos.d类型
nano /etc/yum.repos.d/CentOS-Base.repo
向下滚动到[extras]部分并确保它是这样的:
#additional packages that may be useful
[extras]
priority=1
name=CentOS-$releasever - Extras
=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
如果需要,请更正它,保存文件(Ctrl-X)并执行以下操作:
yum clean all
yum upgrade
然后尝试重复
yum install php-pgsql
<?php echo 'ini: ', get_cfg_var('cfg_file_path');
看看你要编辑哪个php.ini 我的操作系统Linux薄荷kde和同样的问题
pg_connect()
如果您使用的是php5.6,则必须安装
sudo apt-get install php5.6-pgsql
必须在“php.ini”文件中更改扩展名后。
;extension=php_pgsql.dll
'dll'到'so'
例如
extension=php_pgsql.so
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.