您好,登錄后才能下訂單哦!
Composer安裝配置的過程分析,針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡單易行的方法。
Windows 和 Linux 下 Composer 的安裝及配置
介紹: Composer 是 PHP 用來管理依賴( dependency )關(guān)系的工具。你可以在自己的項(xiàng)目中聲明所依賴的外部工具庫( libraries ), Composer 會(huì)幫您安裝這些依賴的庫文件。
Composer官網(wǎng)下載Composer.exe應(yīng)用(https://getcomposer.org/)
下載的版本為最新的Composer版本并且會(huì)自動(dòng)設(shè)置PATH環(huán)境變量,這樣您就可以從任何目錄調(diào)用Composer
根據(jù)本地php配置的版本選擇 ,然后一路下一步安裝即可
全局配置
①搜索“path”—>打開“編輯系統(tǒng)環(huán)境變量”—“環(huán)境變量”
②配置Administrator用戶變量
# win+R 輸入cmd 進(jìn)入C:\Users\Administrator>composer ______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Composer version 2.1.9 2021-10-05 09:47:38
**# 進(jìn)入根目錄下載** [root@VM-12-9-centos /] curl -sS https://getcomposer.org/installer | php Composer (version 2.1.9) successfully installed to: //composer.phar Use it: php composer.phar #下載成功#友情提示:下載因?yàn)槭峭饩W(wǎng)可能會(huì)出現(xiàn)請(qǐng)求失敗的情況,耐心多嘗試下就成功了
如果下載頻繁失敗 ,則可以使用阿里云的鏡像下載
#本鏡像與 Packagist 官方實(shí)時(shí)同步,推薦使用最新的 Composer 版本
[root@VM-12-9-centos /] curl -sS mirrors.aliyun.com/composer/compos...
# 復(fù)制composer.phar到/usr/local/bin/目錄下生成composer的目錄,方便全局使用[root@VM-12-9-centos /] mv composer.phar /usr/local/bin/composer
由于國外的網(wǎng)站在國內(nèi)請(qǐng)求會(huì)很慢,所以我們可以更換國內(nèi)源來加速源的下載。國內(nèi)鏡像源有很多種,下面列舉常用的幾種,您可以根據(jù)需求選擇其中一種即可。
阿里云Composer鏡像 【推薦 】
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
國內(nèi)云Composer鏡像
composer config -g repo.packagist composer https://packagist.phpcomposer.com
騰訊云Composer鏡像
composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer/
華為云Composer鏡像
composer config -g repo.packagist composer https://repo.huaweicloud.com/repository/php/
安暢云Composer鏡像
composer config -g repo.packagist composer https://yisu.compkg.org/
[root@VM-12-9-centos etc]# composer ______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Composer version 2.1.9 2021-10-05 09:47:38
composer --version# 查看版本會(huì)看到當(dāng)前版本以及更新時(shí)間[root@VM-12-9-centos /]# composer --versionComposer version 2.1.9 2021-10-05 09:47:38
# 升級(jí)將默認(rèn)升到最新版本composer self-update# **友情提示:** 版本升級(jí)命令將會(huì)從官方版本去下載composer,phar鏡像,速度將受限!強(qiáng)烈建議全局配置加速鏡像
composer diagnose
composer clear
composer update --lock
# **Composer調(diào)試只需要在命令前加上-vvv就可以打印出錯(cuò)信息** # 例如下載laravel命名為blog的項(xiàng)目composer -vvv create-project laravel/laravel blog
# 該命令僅限在項(xiàng)目根目錄操作 composer install
# 該命令僅限在項(xiàng)目根目錄操作 ### 更新所有依賴包 composer update ### 更新指定依賴包 composer update monolog/monolog ### 更新多個(gè)指定依賴包 composer update monolog/monolog symfony/dependency-injection ### 根據(jù)通配符匹配更新依賴包 composer update monolog/monolog symfony/*
# 移除指定依賴包 composer remove monolog/monolog # 根據(jù)通配符匹配移除依賴包 composer remove monolog/monolog symfony/*
# 搜索依賴包:輸出包及其描述信息 composer search monolog # 只搜索包:--only-name composer search --only-name monolog # 根據(jù)通配符搜索依賴包 composer search mono*
# **該命令僅限項(xiàng)目根目錄使用**# 查看**當(dāng)前項(xiàng)目**已安裝的依賴包 composer show # 根據(jù)通配符**當(dāng)前項(xiàng)目**進(jìn)行篩選 composer show laravel*# 查看**當(dāng)前項(xiàng)目**指定依賴包 composer show laravel/tinker
在項(xiàng)目中,我們常常使用composer來進(jìn)行包或者庫的下載與更新,但是往往我們?cè)谑褂弥幸矔?huì)遇到各種各樣的問題。接下來,我們將解決常見的問題。
composer 的安裝需要php開啟 putenv 函數(shù) ,否則會(huì)安裝失??!由于 putenv 函數(shù)可以設(shè)置特定的環(huán)境變量而被認(rèn)為是一個(gè)潛在的安全漏洞,因此php在安裝之初是默認(rèn)禁止它的!
刪除禁用函數(shù)
寶塔面板出于對(duì)于安全的考慮,自動(dòng)禁用了一些函數(shù);因?yàn)榘惭bComposer也會(huì)用到相應(yīng)的函數(shù),我們應(yīng)該先刪除在安裝 Composer 。 ????????安裝 Composer 需要刪除 的 PHP 禁用函數(shù):
putenv()
????????友情提示: 在使用 Composer 的時(shí)候需要根據(jù)項(xiàng)目的php版本去做操作(安裝多少個(gè)PHP版本就需要相對(duì)應(yīng)刪除),下圖示范是根據(jù) php-8.0 來操作的。
非寶塔面板管理操作
# 進(jìn)入php.ini配置文件編輯--->搜索(輸入 / 進(jìn)入搜索模式,搜索disable_functions)# ---->依次刪除putenv**### 第一步:查詢php.ini路徑** [root@VM-12-9-centos 74]# find / -name "php.ini"/www/server/php/56/etc/php.ini /www/server/php/80/etc/php.ini /www/server/php/74/etc/php.ini **### 第二步:依次編輯php.ini文件** : 刪除函數(shù)putenvvim /www/server/php/56/etc/php.ini **### 第三步:搜索“disable_functions”** # ESC + :+ / + disable_functions 將會(huì)自動(dòng)定位到指定位置disable_functions = passthru,exec,system,**putenv** ,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv **### 第四步:保存文件并退出** ESC + :wq!
友情提醒
寶塔是支持php多版本的,如果在不同版本的php中使用 composer ,只要開啟php中的 putenv 函數(shù)即可!
composer.lock已經(jīng)存在
使用場景: 由于下載代碼或者git代碼或者部署項(xiàng)目時(shí)會(huì)存在
composer.lock
, 首先應(yīng)該刪除composer.lock
# 項(xiàng)目中composer.lock已經(jīng)存在,需要進(jìn)行刪除,再重新安裝,安裝成功后會(huì)重新生成composer.lock文件# 案例示范:**### 第一步:進(jìn)入項(xiàng)目blog根目錄** cd www\wwwroot\blog **### 第二步:刪除composer.lock文件** # 刪除請(qǐng)核對(duì)文件名后謹(jǐn)慎操作rm -rf composer.lock **### 第三步:重新composer安裝項(xiàng)目所需包** composer install
提示: 不要忘了經(jīng)常執(zhí)行
composer selfupdate
以保持 Composer 一直是最新版本哦!
關(guān)于Composer安裝配置的過程分析問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。