composer
作者: 游鱼思
官方镜像被封的死死的,一定得切换镜像源:
# 全局切换国内镜像
# 阿里云
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
# 中国全量镜像
composer config -g repo.packagist composer https://packagist.phpcomposer.com
# 取消全局配置
composer config -g --unset repos.packagist
# 当前工程切换配置
composer config repo.packagist composer https://mirrors.aliyun.com/composer/
# 取消当前工程配置
composer config --unset repos.packagist
# 清除缓存
composer clear
# 安装依赖包
composer install
# 安装依赖
composer require monolog/monolog
# 更新所有依赖
composer update
# 移除一个包及其依赖
composer remove monolog/monolog
# 列出所有已经安装的包
composer show
疑难杂症
composer 无法安装Drupal
Could not find package drupal/recommended-project with stability stable.
$ composer show drupal/recommended-project --all
No composer.json found in the current directory, showing available packages from packagist.org In ShowCommand.php line 324: Package "drupal/recommended-project" not found.
解决办法:composer config -g --unset repos.packagist
无法检测root包版本
Composer could not detect the root package (drupal/recommended-project) version, defaulting to '1.0.0'. See https://getcomposer.org/root-version
不会影响包的安装等操作,除非将来要基于composer发行。
参考: Root cause of 'could not detect the root package'? | Drupal.org
其它
清除缓存:
composer clear
还有:将项目下 composer.json 的 https://asset-packagist.org 改为 https://asset-packagist.cn
另外, packages.drupal.org 还被DNS污染了,国内解析的大都不正确
在host里面改为 199.232.46.217
Composer 报错: PHP Fatal error: Uncaught Error: Call to undefined function Composer\XdebugHandler\putenv()
原因:宝塔面板安装了多个php版本 网站设置的php仅为网站的php对应脚本 服务器运行的php版本并未删除对应的 putenv函数 出现问题
解决办法:将宝塔面板-网站php命令行版本切换到与网站运行的php版本一致,或者删除对应的php命令行版本的禁用函数