Composer常見問題


Composer常見問題

原文鏈接: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.24\verify目錄中),可以從https://curl.haxx.se/docs/caextract.html處下載。

接下來,定位到

;openssl.cafile= 

和上面一樣,刪去分號,取消注釋,設置CA證書為openssl.cafile= C:\php-5.6.24\verify\cacert.pem

最后, 重新在命令行窗口中打開項目的根目錄,執行命令:composer install,等待幾分鍾后,就可以成功添加monolog依賴。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM