【问题标题】:How to check if PDO support is enabled in my Apache Installation?如何检查我的 Apache 安装中是否启用了 PDO 支持?
【发布时间】:2010-11-08 10:43:49
【问题描述】:

我正在通过 CIPL.in 使用共享主机。他们使用cpanel。我正在尝试在我的网站上部署 ZEND 应用程序。但是它一直给出错误。

An error occurred
Application error
Exception information:

Message: The PDO extension is required for this adapter but the extension is not loaded
Stack trace:

#0 /home/cubeeeco/worminc/library/Zend/Db/Adapter/Abstract.php(770): Zend_Db_Adapter_Pdo_Abstract->_connect()
#1 /home/cubeeeco/worminc/library/Zend/Db/Adapter/Abstract.php(840): Zend_Db_Adapter_Abstract->quote('windchimes', NULL)
#2 /home/cubeeeco/worminc/library/Zend/Auth/Adapter/DbTable.php(354): Zend_Db_Adapter_Abstract->quoteInto('`password` = MD...', 'windchimes')
#3 /home/cubeeeco/worminc/library/Zend/Auth/Adapter/DbTable.php(285): Zend_Auth_Adapter_DbTable->_authenticateCreateSelect()
#4 /home/cubeeeco/worminc/library/Zend/Auth.php(117): Zend_Auth_Adapter_DbTable->authenticate()
#5 /home/cubeeeco/worminc/application/controllers/LoginController.php(117): Zend_Auth->authenticate(Object(Zend_Auth_Adapter_DbTable))
#6 /home/cubeeeco/worminc/library/Zend/Controller/Action.php(503): LoginController->processAction()
#7 /home/cubeeeco/worminc/library/Zend/Controller/Dispatcher/Standard.php(285): Zend_Controller_Action->dispatch('processAction')
#8 /home/cubeeeco/worminc/library/Zend/Controller/Front.php(934): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))
#9 /home/cubeeeco/public_html/worm/index.php(47): Zend_Controller_Front->dispatch()
#10 {main}

当我尝试打印出我得到的 phpinfo 时:

System  Linux bear.dnsracks.com 2.6.18-92.1.13.el5PAE #1 SMP Wed Sep 24 20:07:49 EDT 2008 i686
Build Date  Jun 8 2009 13:50:29
Configure Command   './configure' '--disable-pdo' '--enable-bcmath' '--enable-calendar' '--enable-ftp' '--enable-gd-native-ttf' '--enable-libxml' '--enable-magic-quotes' '--enable-mbstring' '--enable-sockets' '--prefix=/usr' '--with-curl=/opt/curlssl/' '--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-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-png-dir=/usr' '--with-ttf' '--with-xpm-dir=/usr' '--with-zlib' '--with-zlib-dir=/usr'
Server API  CGI
Virtual Directory Support   disabled
Configuration File (php.ini) Path   /usr/lib
Loaded Configuration File   /usr/local/lib/php.ini
Scan this dir for additional .ini files     (none)
additional .ini files parsed    (none)
PHP API     20041225
PHP Extension   20060613
Zend Extension  220060519
Debug Build     no
Thread Safety   disabled
Zend Memory Manager     enabled
IPv6 Support    enabled
Registered PHP Streams  php, file, data, http, ftp, compress.zlib, https, ftps
Registered Stream Socket Transports     tcp, udp, unix, udg, ssl, sslv3, sslv2, tls
Registered Stream Filters   string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, convert.iconv.*, zlib.*

这可以在http://cubeee.co.in/worm/tester.php看到

但是,当我回到托管服务提供商处时,他们告诉我他们已经修改了 php.ini 以启用 PDO 支持,他们会再次检查。我需要做什么或要求我的主人做什么?

【问题讨论】:

    标签: php apache zend-framework hosting pdo


    【解决方案1】:
    if (!defined('PDO::ATTR_DRIVER_NAME')) {
    echo 'PDO unavailable';
    }
    elseif (defined('PDO::ATTR_DRIVER_NAME')) {
    echo 'PDO available';
    }
    

    我希望这有效

    【讨论】:

    • 这个答案比公认的答案更有帮助。我的 phpinfo() 显示 --disable-pdo 但这告诉我 PDO 可用。
    • 这证实了我的怀疑,谢谢!
    【解决方案2】:

    PHP 输出中的配置命令显示:

    '--disable-pdo'
    

    所以我认为假设他们没有启用它是安全的。

    【讨论】:

    • 他们本可以在之后构建扩展,现在用 extension=php_pdo.... .
    • 这就是为什么共享主机是一场噩梦!
    • 是的 - 你有 mysql、mysqli,但没有 PDO。如果要查看是否安装了 PDO,只需在页面中 grep 查找 PDO,并查看其是否在实际模块中提及。
    【解决方案3】:

    这个应用程序需要 Pdo_Mysql 吗?如果是这样,您也许可以改用 Mysqli 适配器 - 这取决于软件,但这是可能的。

    在您设置数据库连接详细信息的区域中,可能有一个名为“适配器”的选项。尝试将其值设置为 'mysqli'

    【讨论】:

    • 那你就不需要 Pdo 了。我误会了吗?
    猜你喜欢
    • 2020-06-10
    • 2015-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-02
    • 1970-01-01
    • 2013-12-06
    相关资源
    最近更新 更多