唯一推荐方式是composer create-project,它克隆官方骨架仓库(如symfony/skeleton或website-skeleton),自动生成完整目录结构、安装依赖、注入Flex配置并就位核心文件;Symfony CLI(含symfony new)自6.2起已废弃,不可用于新项目初始化。
现在装 Symfony 项目,唯一推荐的方式是 composer create-project。Symfony CLI(包括 symfony new)已全面废弃,不再适用于新项目初始化。
这条命令不是“安装框架”,而是克隆并初始化一个官方预配置的骨架仓库(如 symfony/skeleton 或 symfony/website-skeleton),自动完成:
src/、config/、public/、bin/console 等)config/packages/framework.yaml).env)和内核类(src/Kernel.php)就位自 Symfony 6.2 起,Symfony CLI 工具被标记为 deprecated,且不随 Composer 自动安装。常见问题包括:
symfony new 直接报 command not found
6.4.*,可能拉到 7.0.x)src/、AppKernel 或 bin/console,运行即报错两者都通过 create-project 命令使用,区别在预装组件:
symfony/skeleton:最小化 API / 微服务起点,无 Twig、无 Doctrine、无 Web 服务器支持,启动快、依赖干净symfony/website-skeleton:传统 Web 应用首选,自带 Twig、WebProfiler、AssetMapper 和基础构建能力,开箱即用欢迎页--version=6.4.* 或 :^6.4,避免拉到 alpha/beta 分支跑完 create-project 后,项目还不能直接运行,务必立即执行:
composer install:确保 Flex recipes 正确注入、vendor/autoload.php 生成成功.env 文件中 APP_ENV=dev(开发)或 APP_ENV=prod(上线前)是否设置正确php bin/console cache:clear,尤其在 WSL/Docker 环境下避免权限错误