【发布时间】:2016-06-02 14:10:57
【问题描述】:
我发现了很多这个问题的实例,但无论我尝试什么,它仍然不起作用。
我在 Windows 10 上使用 Apache 服务器运行 MAMP。对于数据库管理,我使用的是 PostgreSQL 9.5。
我的错误是:
致命错误:未捕获的 PDOException:在 C:\MAMP\htdocs\Database assignment\vendor\propel\propel\src\Propel\Runtime\Connection\PdoConnection.php 中找不到驱动程序:49 堆栈跟踪:#0 C: \MAMP\htdocs\Database assignment\vendor\propel\propel\src\Propel\Runtime\Connection\PdoConnection.php(49): PDO->__construct('pgsql:host=loca...', 'postgres', ' prlbrd68', Array) #1 C:\MAMP\htdocs\Database assignment\vendor\propel\propel\src\Propel\Runtime\Adapter\Pdo\PdoAdapter.php(70): Propel\Runtime\Connection\PdoConnection->__construct ('pgsql:host=loca...', 'postgres', 'prlbrd68', Array) #2 C:\MAMP\htdocs\Database assignment\vendor\propel\propel\src\Propel\Runtime\Connection\ConnectionFactory。 php(41): Propel\Runtime\Adapter\Pdo\PdoAdapter->getConnection(Array) #3 C:\MAMP\htdocs\Database assignment\vendor\propel\propel\src\Propel\Runtime\Connection\ConnectionManagerSingle.php( 76): Propel\Runtime\Connection\ConnectionFactory::create(Array, Object(Propel\Runtime\Adapter\Pdo\PgsqlAdapter)) #4 C:\MAMP\h tdocs\Database assignment\vendor\propel\ 在 C:\MAMP\htdocs\Database assignment\vendor\propel\propel\src\Propel\Runtime\Connection\ConnectionFactory.php 第 43 行
据我了解,Apache 服务器无法访问 pdo_pgsql 驱动程序。我已经修改了 Mamp/conf/php7.0.6 中的 php.ini 文件以包含 extension=php_pdo_pgsql.dll 以及 php_pgsql.dll 。
当我调用 phpinfo() 时,它告诉我我设置的 PDO 是 mysql,但事实并非如此。我检查了我是否正在修改正确加载的 php.ini 文件。我已经确保在我的系统 PATH 变量中我还添加了 .dll 的位置。我试图通过使用“LoadFile”C:/Program Files/PostgreSQL/9.5/bin/libpq.dll“”行在 MAMP/conf/Apache/httpd.conf 文件中向服务器添加另一个模块。有人建议添加此行将强制加载库,但是当我添加此行时,服务器根本不会启动。我已经坚持了一整天。欢迎任何帮助!
【问题讨论】:
标签: php apache postgresql pdo mamp