composer.json 中的 support 字段用于声明项目支持渠道,包括 docs、issues、source 等可选键,提升开源协作与用户体验;需使用 HTTPS 稳定链接,保持与 repository 一致,且仅填写实际存在的支持方式。

在 composer.json 中定义 support 信息,是为了向使用者清晰展示项目的支持渠道,比如文档地址、问题反馈入口、源码仓库等。这些字段虽不参与依赖解析,但对开源协作和用户友好性很重要。
support 字段的基本结构
support 是一个对象,放在 composer.json 的顶层,支持以下常用键(均为可选):
- docs:项目文档的 URL(如 Wiki、ReadTheDocs 页面)
- issues:问题跟踪系统地址(如 GitHub Issues 页面)
-
source:源码仓库地址(通常与
repositories或 VCS 自动识别一致) - forum:社区论坛或讨论区链接
- wiki:项目维基页面(部分平台会单独展示)
-
irc:IRC 或 Slack/Discord 等实时交流频道(格式如
irc://irc.libera.chat/#package-name) - chat:现代聊天平台链接(如 Discord invite 链接)
- email:支持邮箱(慎用,建议优先用 issues 或 forum)
一个实用的配置示例
以一个托管在 GitHub 的 PHP 包为例:
{
"name": "vendor/package-name",
"description": "A useful package",
"support": {
"docs": "https://vendor.github.io/package-name/",
"issues": "https://github.com/vendor/package-name/issues",
"source": "https://github.com/vendor/package-name",
"wiki": "https://github.com/vendor/package-name/wiki",
"chat": "https://discord.gg/abc123"
}
}
注意事项和最佳实践
这些字段会被 Packagist、GitHub Marketplace、IDE 插件(如 PhpStorm)等工具读取并展示,因此需注意:
- 所有 URL 应使用 HTTPS,确保可访问且长期稳定
- 避免使用短链或跳转页,直接指向目标资源
-
source地址应与repository字段(若存在)保持一致,否则可能引发工具识别异常 - 如果项目没有某类支持(如无论坛),就不要写对应字段,留空不如省略
- 中文项目可将
docs指向中文文档,但建议同时提供英文版入口或注明语言版本
验证是否生效
提交更新后的 composer.json 并推送至仓库后,可在 Packagist 页面(如 https://packagist.org/packages/your-vendor/your-package)查看右栏的 “Support” 区域,确认链接正确显示。本地运行 composer show vendor/package-name 也能看到 support 信息。










