添加注释

用户贡献的注释 5 注释

31
MIhail-Klr at gmx dot net
9 年前
我也遇到了这种情况,使用的是 PHP 5.4.1。
将有问题的 DLL 复制到所有位置都没有用,而且我的服务器上没有安装 Postgres,但我也计划使用 PHP 对不同的 Postgres 版本进行操作,所以我找到的唯一有效的解决方案是在 httpd.conf 中添加一行:

LoadFile "C:/Program Files/PostgreSQL/8.4/bin/libpq.dll"

但是要参考与 PHP 捆绑在一起的 libpq.dll,就像这样:

LoadFile "C:/php/libpq.dll"

之后,对我来说它运行良好。

(c) https://stackoverflow.com/users/1373641/dayron-armas-peña
来自:https://stackoverflow.com/questions/551734/php-not-loading-php-pgsql-dll-on-windows/10439560#10439560
8
nestor dot martinez at etb dot net dot co
14 年前
如果您收到类似这样的消息:
"Php Startup: Unable to load dynamic library 'C:\php\ext\php_pgsql.dll"

1. 在配置文件中更改库 "php_exif.dll" 和 "php_mbstring.dll" 的顺序,以便首先调用库 "php_mbstring.dll"

2. 将您安装的 PostgreSQL 的 "bin" 文件夹中的所有库复制并粘贴到 Windows 的根文件夹中

3. 取消注释 "extension=php_pgsql.dll" 行
4. 现在,您应该在 "phpinfo()" 生成的页面中看到 PostgreSQL 部分
-4
emil at example dot com
15 年前
无法加载动态库 'C:\\php\\ext\\php_pgsql.dll' - 找不到指定的模块。

另一种解决方案

从 zip 文件(如果您从安装程序中获取了 php)中复制 libpq.dll/所有文件

添加到 httpd.conf

#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
PHPIniDir "c:/PHP/"
Loadfile "C:\php\php5ts.dll"
Loadfile "C:\php\libpq.dll"
LoadModule php5_module "c:/PHP/php5apache2_2.dll"
#END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
AddHandler application/x-httpd-php .php
AddHandler application/x-httpd-php-source .phps

(在 php.ini 中默认:extension_dir ="c:\PHP\ext" )

如果它不起作用,请将 c:\php(php 路径)添加到您的 Windows 路径中(并重新启动)

在 php5.2.8 + apache2.2.3 上测试
-3
kouber at php dot net
15 年前
如果您在 Windows 上遇到此错误:

无法加载动态库 'C:/php/ext\\php_pgsql.dll' - 找不到指定的模块。

尝试从 https://postgresql.ac.cn/ftp/binary/v8.3.5/win32/ (用最新稳定版本替换 8.3.5)下载 PostgreSQL 二进制文件(无安装)存档,并将这些 DLL 复制到 C:/WINDOWS/system32/

comerr32.dll
gssapi32.dll
k5sprt32.dll
krb5_32.dll
libeay32.dll
libiconv2.dll
libintl3.dll
libpq.dll
ssleay32.dll
-12
some at domain dot name
14 年前
另一个 Windows XP 解决方法,用于解决 "无法加载动态库 'php_pgsql.dll' - 找不到指定的模块。" 错误。

将 postgres 二进制文件路径添加到系统搜索路径中

右键单击 "我的电脑",选择 "属性","高级" 选项卡,"环境变量" 按钮,"系统变量" 部分,选择 "路径" 并单击 "编辑",并在末尾添加 postgres 二进制文件的路径,在我的情况下是 "C:\Program Files\PostgreSQL\8.4\bin",然后重新启动计算机(或至少重新启动 apache/php 进程)

请注意,系统路径可以包含多个值,每个值用分号 ";" 分隔。
To Top