windows服务器下IIS6/7下PHP 无法加载 php_curl.dll 等动态链接
时间:2016-09-25
问题:
PHP 在 IIS6 或 IIS7 中无法加载 php_curl.dll 动态链接库。
解决方法:
在PHP手册中有相关说明:php_curl.dll;CURL,客户端 URL 库函数库;需要:libeay32.dll,ssleay32.dll(已附带)
所以只要将 libeay32.dll,ssleay32.dll 这两个库复制到 %WINDOWS% 目录下即可。
PS:网上有很多人说将以上两个库复制到 %SYSTEM32%,而这完全不起作用,文章只会COPY,又不经考证,简直就是误人子弟,浪费人家时间。
经过鄙人一翻研究,发现了一个规律,即:在 windows 下 PHP 无法加载扩展库的一般解决方法。步骤如下:
1、检查PHP 扩展文件夹(如:/php/ext/)中是否扩展库的相关动态链接库。
2、在PHP手册中查找无法加载的扩展的相关说明。
比如无法加载的库是 php_openssl.dll,而在PHP手册中找到的相关说明是:php_openssl.dll;OpenSSL 函数库;需要:libeay32.dll(已附带)。由此可见,加载 php_openssl.dll 库还需要 libeay32.dll 库。
3、将 libeay32.dll 库复制到 %WINDOWS% 目录下。重启 IIS,在 phpinfo.php 里即可看到 openssl 了。需要注意的是,像 libeay32.dll(已附带)这种 PHP 已附带的才复制到 %WINDOWS% 目录下。