zoukankan      html  css  js  c++  java
  • Composer常见问题

    安装了Composer后,运行composer --version,查看Composer的版本号。如果出现下面的提示,那么软件安装成功。

    Composer version 1.2.0 2016-07-19 01:28:52

    若想给某个项目添加类似monolog的第三方库,则按下面的步骤操作:

    1. 新建composer.json文件,添加内容:

      {
            "require": {
              "monolog/monolog": "1.20.0"
            },
            "repositories": {
              "packagist": {
                "type": "composer",
                "url": "https://packagist.phpcomposer.com"    // Mirror site in China.
              }
            }
      }
      
    2. 以命令行方式打开项目的根目录,输入命令:composer install;

    正常情况下,一切顺利,执行完上述命令就能够成功导入monolog库到项目中。但是,现实与想象总是有段距离,上面只是走完了“长征”路程的一半,还有“雪山”要翻、“草地”要过呢!

    执行完命令:composer install后,并不会像期待那样地导入依赖,而是抛出异常。

    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.

    这段异常日志的大致意思是,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-dir
    extension_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:php-5.6.24verify目录中),可以从https://curl.haxx.se/docs/caextract.html处下载。

    接下来,定位到

    ;openssl.cafile= 
    

    和上面一样,删去分号,取消注释,设置CA证书为openssl.cafile= C:php-5.6.24verifycacert.pem

    最后, 重新在命令行窗口中打开项目的根目录,执行命令:composer install,等待几分钟后,就可以成功添加monolog依赖。

    参考:http://www.ituring.com.cn/article/261281

  • 相关阅读:
    Dom 动态添加元素节点总结
    SQLserver 获取当前时间
    Var的用法解析
    JS 转换HTML转义符
    20210602---为了养老,全力以赴,珍惜每一秒钟。决心不够大,不够担心未来,现在虽然挣得少,但是有吃有喝,满足了。
    20210601——今天开始狠狠奖励自己,而且是必须玩的这种。做事投入你就会快乐。
    20210531兴趣
    20210527学习笔记--没成功的唯一原因是,想得和说的太多 做的太少。
    20210526--今年还有半年,抓紧一切时间学习
    20210524学习笔记---从记日记开始已经有3个月了,浪费时间的痕迹渐渐清醒
  • 原文地址:https://www.cnblogs.com/Amos-Turing/p/8124171.html
Copyright © 2011-2022 走看看