如何在不运行composer的情况下部署php应用程序

如何在不运行composer的情况下部署php应用程序,php,composer-php,Php,Composer Php,我有一个yii2web应用程序,它使用Composer作为其依赖项。如何在不必运行composer的情况下在生产服务器上部署此应用程序?我想做的是在开发服务器上压缩整个应用程序目录,将其复制到生产服务器,解压并将其部署在那里,而无需composer运行任何操作。我找到了解决方案。运行: composer install --prefer-dist --no-dev --optimize-autoloader 然后将整个目录复制到生产服务器 发件人: --首选dist:与--preference

我有一个yii2web应用程序,它使用Composer作为其依赖项。如何在不必运行composer的情况下在生产服务器上部署此应用程序?我想做的是在开发服务器上压缩整个应用程序目录,将其复制到生产服务器,解压并将其部署在那里,而无需composer运行任何操作。

我找到了解决方案。运行:

composer install --prefer-dist --no-dev --optimize-autoloader
然后将整个目录复制到生产服务器

发件人:

--首选dist:与--preference source相反,如果可能,Composer将从dist安装。这可以大大加快安装速度 构建通常不运行的服务器和其他用例 供应商的最新情况。这也是一种规避问题的方法 git,如果您没有正确的设置

--无开发:跳过安装require-dev中列出的包。自动加载程序生成跳过自动加载开发规则

--优化自动加载器(-o):将PSR-0/4自动加载器转换为类映射以获得更快的自动加载器。这是特别推荐的 用于生产,但运行可能需要一点时间,因此当前 默认情况下未完成


那你为什么不把拉链拉上?Composer只是简单得多,但您仍然可以使用Composer之前存在的部署方法。我尝试将其压缩并复制到其他系统,但当我调用应用程序时,它失败,出现
ReflectionException
错误,这意味着类自动加载不起作用,找不到必要的类文件。如果我在系统上运行
composer install
,那么它将正常加载。您可以参考一些文档来了解您在这里使用的命令和标志吗?