我有PHP版本5.6.29,我必须安装phalcon 2.0.10,并在ubuntu14.04系统上尝试使用phalcon 2.0.13版本。但是我在apache错误日志中遇到错误
PHP警告:PHP启动:无法加载动态库' /usr/lib/php/20131226/phalcon.so' - /usr/lib/php/20131226/phalcon.so:undefined symbol:php_pdo_g $
所以请在这里帮助我。
答案 0 :(得分:0)
未定义的符号:php_pdo_g
看起来你没有pdo扩展名。或者参考:Why does Phalcon 2 raise "undefined symbol: php_pdo_get_dbh_ce in Unknown on line 0" warning?
答案 1 :(得分:0)
正如你在ubuntu 14.04上有apache2我假设你已经添加了
extension=phalcon.so
在错误的文件中。在路径/etc/php5
的ubuntu中有一些很好的PHP配置文件。矿树看起来像这样:
/etc/php5$ tree
.
├── apache2
│ ├── conf.d
│ │ ├── 05-opcache.ini -> ../../mods-available/opcache.ini
│ │ ├── 10-pdo.ini -> ../../mods-available/pdo.ini
│ │ ├── ...
│ │ └── 21-phalcon.ini -> /etc/php5/mods-available/phalcon.ini
│ └── php.ini
├── cli
│ ├── conf.d
│ │ ├── 05-opcache.ini -> ../../mods-available/opcache.ini
│ │ ├── 10-pdo.ini -> ../../mods-available/pdo.ini
│ │ ├── ...
│ │ └── 21-phalcon.ini -> /etc/php5/mods-available/phalcon.ini
│ └── php.ini
└── mods-available
├── ...
└── phalcon.ini
如您所见,在mods-available
文件夹中有一个phalcon.ini
文件,其中包含extension=phalcon.so
行。比其他文件夹中有符号链接。不要忘记符号链接名称开头的数字。在文档中,他们有时会写它应该命名为30-phalcon.ini
等。例如,它应该在所有其他扩展之后加载以满足Phalcons要求,并且文件名的第一部分的最高数字用于此,因为扩展是基于文件名以升序加载。
要解决您的问题,您应该从php.ini文件中删除扩展行,并将其放在mods-available/
目录中的专用文件中,然后在所有conf.d/
文件夹中将其与正确的文件名链接。
答案 2 :(得分:-2)
教程如何安装phalcon: https://www.digitalocean.com/community/tutorials/how-to-install-and-get-started-with-phalcon-on-an-ubuntu-12-04-vps
你应该php.ini编辑和Apache重启:
sudo service apache2 restart