今天在用 composer 安装 laravel 时报错
The openssl extension is required for SSL/TLS protection but is not availab le. If you can not enable the openssl extension, you can disable this error , at your own risk, by setting the ‘disable-tls’ option to true.
网上说是 OpenSSL 没有打开的问题,打开 php.ini,启用插件并设置相应的证书,然后重启 Apache。理论上来说,走到这一步应该没什么问题了,phpinfo(); 里也有 OpenSSL 的扩展,但是报错依旧。
研究后发现,composer 判断 OpenSSL 的依据是:当前环境变量下的 php 目录下的 php.ini 文件,但是 wamp 下 php.ini 文件实际上对应的是 php 目录下的 phpForApache.ini 而不是 php.ini,所以把 phpForApache.ini 里的内容全部复制到 php.ini,再次运行 composer install 就没有报错了。