Windows下PHP7 MongoDB/FTP/CURL扩展安装失败解决办法
之前在搭建Windows下的PHP开发环境没有用集成开发环境,选择的是自己手动搭建的环境,在用的过程中出现了一些问题,在linux下用 MongoDB/FTP/CURL这些扩展完全没问题,但一到Windows下安装扩展的时候,相关的dll都放在了php下的ext文件夹中,php.ini中的extension也开启了,然而用phpinfo()打印出来并没有这些扩展,里面的内容也用不了。
我在cli模式下用php -m,显示如下:
这样看来在php中是已经导入成功了的,但用phpinfo()照样不能显示,这些库里的函数在cgi模式下也没有办法使用,在CLI模式下面又都没问题,想到的是可能Appache的配置有一些问题。
在查了一些资料后,发现些php扩展需要依赖libssh2.dll和libssl-1_1-x64.dll,这两个dll在PHP根目录下,appache没有找到这两个dll,所以在CGI模式下这些扩展没有办法使用,网上有些办法是说将php的目录路径添加到系统环境变量里面,但不知道是不是我没有设置对,仍然没有解决,所以干脆直接去修改httpd.conf,在httpd.conf中加入:
LoadFile C:/Myeven/php-7.3.1-Win32-VC15-x64/libssh2.dll
LoadFile C:/Myeven/php-7.3.1-Win32-VC15-x64/libssl-1_1-x64.dll
重启Appache
解决!