composer的常见问题

安装了Composer后,运行composer --version,查看Composer的版本号。如果出现提示,那么软件安装成功。
安装类库时抛出如下异常:

<code>
The openssl extension is required for SSL/TLS protection but is not available. If you can not enable the openssl exension, you can disable this error, at your own risk, by setting the ‘disable-tls’ option to true.
</code>

这段异常日志的大致意思是,Composer采用SSL连接,需要外挂OpenSSL插件。

要消除这个异常,有两种解决方式,一是放弃SSL连接、直接“裸奔”;二是启用OpenSSL。

取消SSL连接的命令是

composer config -g -- disable-tls true

然而并没有什么卵用,试过之后,又抛出了新的异常。

剩下来的方案就是尝试启用OpenSSL。安装了PHP后,安装目录(类似C:\php-5.6.24)中包含两个文件,一个是php.ini-development,另一个是php.ini-production,选择将其中任意的一个文件重命名为php.ini,用作PHP的默认配置文件。通过修改配置文件来启用OpenSSL插件。

编辑php.ini文件,首先,定位到:

; Directory in which the loadable extensions (modules) reside.
; http://php.net/
  extension-dirextension_dir = "./"
; On windows:
  extension_dir = "ext"

删除extension_dir = "./"和extension_dir = "ext"前面的分号,取消注释这两行代码,配置PHP插件目录为./ext。

然后,定位到:

;extension=php_mysqli.dll;extension=php_oci8_12c.dll  ; Use with Oracle Database 12c Instant Client
extension=php_openssl.dll
;extension=php_pdo_firebird.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll

删除extension=php_openssl.dll前面的分号,取消注释,从而启用OpenSSL插件。
注意:因为SSL连接需要认证,所以继续下面的步骤之前,需要准备好CA证书(建议把证书保存到C:\php7.0\verify
目录中),可以从 https://curl.haxx.se/docs/caextract.html 处下载。
接下来,定位到

;openssl.cafile= 

和上面一样,删去分号,取消注释,设置CA证书为:

openssl.cafile= C:\php7.04\verify\cacert.pem


最后, 重新在命令行窗口中打开项目的根目录,执行命令:composer install

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • php.ini设置,上传大文件: post_max_size = 128Mupload_max_filesize ...
    bycall阅读 11,779评论 3 64
  • 前言:随着开源的东西越来越多,一些好的代码我们是可以直接拿过来用的,github更是加快了这一节奏,在github...
    Gamer_young阅读 20,090评论 3 3
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,380评论 19 139
  • 现已工作一年有余,三百六十日,大半所为家,从来努力学习,真想成为优秀,实际感受到了公安基层的真实生存状态。 然志大...
    一时愚亮逄阅读 2,593评论 0 1
  • 第 80 章 阴差阳错 第三部 李建成(之三十四) 田里的...
    铁马老言阅读 1,469评论 0 3