Composer可通过repositories字段配置自定义源以安装私有库,支持vcs和composer类型,如私有Git仓库或Satis镜像源,需在auth.json中配置认证信息并确保包定义正确,避免密码泄露。

Composer 默认从 Packagist 下载包,但你可以配置自定义源来安装私有库或使用镜像。这在团队内部开发、部署私有组件时非常实用。
添加自定义仓库
在项目的 composer.json 中通过 repositories 字段添加非 Packagist 的源。支持多种类型,常见的是 composer(基于 Composer 镜像)和 vcs(版本控制系统,如 Git)。
示例:使用 VCS 添加私有 Git 仓库当你有一个私有 Git 项目,可以这样配置:
{
"repositories": [
{
"type": "vcs",
"url": "https://git.example.com/my-private-package.git"
}
],
"require": {
"my-vendor/my-private-package": "^1.0"
}
}
Composer 会从指定的 Git 地址拉取代码,并按版本要求安装。
示例:使用自定义 Composer 镜像源如果你搭建了 Satis 或 Toran Proxy 这类私有包服务器,使用 composer 类型:
{
"repositories": [
{
"type": "composer",
"url": "https://packages.example.com"
}
],
"require": {
"my-company/secret-lib": "^2.1"
}
}
Composer 会从此镜像源查询并下载包,适合集中管理多个私有包。
Sylius开源电子商务平台是一个开源的 PHP 电子商务网站框架,基于 Symfony 和 Doctrine 构建,为用户量身定制解决方案。可管理任意复杂的产品和分类,每个产品可以设置不同的税率,支持多种配送方法,集成 Omnipay 在线支付。功能特点:前后端分离Sylius 带有一个强大的 REST API,可以自定义并与您选择的前端或您的微服务架构很好地配合使用。如果您是 Symfony
认证私有仓库
如果源需要身份验证(如私有 Git 或 HTTPS 包服务器),可通过以下方式配置凭证:
示例:auth.json 配置 HTTP 基本身份验证{
"http-basic": {
"packages.example.com": {
"username": "your-username",
"password": "your-token-or-password"
}
}
}
将此文件放在项目根目录或 Composer 全局配置目录(通常是 ~/.config/composer/auth.json)。
注意事项
自定义源虽然灵活,但需注意:
- 确保仓库中包的 name 和 version 定义正确
- VCS 仓库必须包含有效的 composer.json
- 优先使用 HTTPS + token,避免明文密码
- 公共项目中不要提交 auth.json
基本上就这些。配置好后,直接运行 composer install 即可从自定义源拉取依赖。不复杂但容易忽略细节。









