【问题标题】:Zend Framework 2 Class 'PDO' not found未找到 Zend Framework 2 类“PDO”
【发布时间】:2015-03-18 17:21:10
【问题描述】:

您好,我正在使用 Zend Framework 2,尝试将应用程序部署到主机时遇到问题。

该应用程序在 localhost 中完美运行(运行 lampp)。但是,当我将它部署到我的生产服务器(托管)时,我收到以下错误:

Fatal error: Class 'PDO' not found in /xxxx/xxxx/public_html/sandbox/xxxx/config/autoload/global.php on line 20

我的生产服务器正在运行:

PHP 5.4.22

这是我的phpinfo的截图

我不确定以下是否是导致问题的原因,但根据配置命令(请参阅 phpinfo),有一个参数显示:“--​​disable-pdo”

如果这是问题所在,我该如何解决?

感谢您的帮助...

编辑 1

所以我在 /usr/local/lib/php.ini 中打开了我的 php.ini 文件(基于 phpinfo 加载的配置文件)。

快速查找后,我没有找到任何说 pdo_mysql.so 的行,也没有找到任何其他包含“pdo”的行。我应该自己添加还是有其他更好的解决方案?

【问题讨论】:

  • 找到包含pdo.so的包,并加载它。
  • @mario 是不是意味着我必须编辑我的 php.ini 并取消注释包含 pdo.so 的行?

标签: php mysql pdo zend-framework2


【解决方案1】:

所以我最终使用以下命令重新编译 apache 和 php

'./configure' '--disable-fileinfo' '--enable-bcmath' '--enable-calendar' '--enable-exif' '--enable-ftp' '--enable-gd-native-ttf' '--enable-libxml' '--enable-mbstring' '--enable-pdo=shared' '--enable-soap' '--enable-sockets' '--enable-zip' '--prefix=/usr/local' '--with-apxs2=/usr/local/apache/bin/apxs' '--with-bz2' '--with-curl=/opt/curlssl/' '--with-curlwrappers' '--with-freetype-dir=/usr' '--with-gd' '--with-gettext' '--with-imap=/opt/php_with_imap_client/' '--with-imap-ssl=/usr' '--with-jpeg-dir=/usr' '--with-kerberos' '--with-libdir=lib64' '--with-libexpat-dir=/usr' '--with-libxml-dir=/opt/xml2' '--with-libxml-dir=/opt/xml2/' '--with-mcrypt=/opt/libmcrypt/' '--with-mysql=/usr' '--with-mysql-sock=/var/lib/mysql/mysql.sock' '--with-mysqli=/usr/bin/mysql_config' '--with-openssl=/usr' '--with-openssl-dir=/usr' '--with-pcre-regex=/opt/pcre' '--with-pdo-mysql=shared' '--with-pdo-sqlite=shared' '--with-pic' '--with-png-dir=/usr' '--with-tidy=/opt/tidy/' '--with-xmlrpc' '--with-xpm-dir=/usr' '--with-xsl=/opt/xslt/' '--with-zlib' '--with-zlib-dir=/usr'

我的应用程序现在按预期工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-05
    相关资源
    最近更新 更多