Php Symfony使用composer脱机安装

Php Symfony使用composer脱机安装,php,symfony,server,composer-php,symfony-3.1,Php,Symfony,Server,Composer Php,Symfony 3.1,我正在尝试将Symfony安装到一台服务器上,该服务器没有连接到internet。我在服务器上复制了composer,但当我尝试安装它时,出现了此错误 连接错误[错误连接]:无法连接到getcomposer.org 是否有任何可能的方法在没有主动连接到互联网的情况下安装symfony;像下载框架一样,把它放在服务器上,然后离线运行composer?或者它是否有太多的依赖项,这些依赖项会被包括在内 我已经在谷歌上搜索过,但找不到令人满意的解决方案。您可以在连接到internet的计算机上运行com

我正在尝试将Symfony安装到一台服务器上,该服务器没有连接到internet。我在服务器上复制了composer,但当我尝试安装它时,出现了此错误

连接错误[错误连接]:无法连接到getcomposer.org

是否有任何可能的方法在没有主动连接到互联网的情况下安装symfony;像下载框架一样,把它放在服务器上,然后离线运行composer?或者它是否有太多的依赖项,这些依赖项会被包括在内


我已经在谷歌上搜索过,但找不到令人满意的解决方案。

您可以在连接到internet的计算机上运行composer,并复制所有目录和文件

作曲者将作品桅杆连接到互联网,检查新版本的软件包

Do

composer install -o
安装。然后在prod/dev构建资产中执行所有准备工作,如清除缓存并转储它们

   php app/console cache:clear && php app/console cache:clear -e prod --no-debug
   php app/console assetic:dump -e prod --no-debug
   php app/console assets:install web --symlink --relative
然后将项目推送/ftp到服务器。我强烈建议你跑步

composer dumpautoload -o
为了更新服务器上的autolaod文件

更新: 您还可以(应该)在服务器上运行symfony的安装后脚本(卸载自动加载后)来编辑/更新
参数.yml
,因为db访问、邮件传输可能与您的开发机器上的不同

composer run-script post-install-cmd
php app/console cache:clear -e prod --no-debug
那就跑吧

php/console list

如果您将获得所有可用命令的列表=>您的symfony应用程序已成功安装并运行,简短的回答是是,有几种方法可以做到这一点

正如其他人所建议的,最佳选择是在连接到internet的系统上构建项目(安装Symfony、安装Composer、更新依赖项),然后在服务器上复制项目

警告 构建项目的系统应尽可能与实际服务器(我指的是PHP版本、MySQL版本等)相似,否则项目可能会中断


您可能希望构建一个虚拟机,使其真正相似,这也有利于开发。在这种情况下,您可以看看像和这样的工具。

我在symfony3中也有同样的问题

解决方案:

  • 为安全起见,创建项目档案
  • 将项目表单
    服务器
    复制到可访问internet的计算机(所有文件和目录):
    笔记本电脑
  • 在笔记本电脑上运行
    composer update
  • 在服务器上:

    rm-rf应用程序/*
    rm-rf bin/*
    rm-rf var/cache/*
    rm-射频变量/日志/*
    rm-射频变量/会话/*
    rm-射频供应商/*
    rm composer.json
    rm composer.lock

  • 从笔记本电脑复制到服务器文件到目录:
    app/
    bin/
    vendor/
    composer.json
    composer.lock


  • 它对我有用:-)

    你的意思是我应该在我的机器上运行composer,然后将symfony项目复制到服务器上,而不需要在服务器上安装composer吗?我安装了composer并复制了所有文件的项目,但当我尝试打开symfony项目时,我收到以下错误“在该服务器上找不到请求的URL”你知道如何配置它吗?谢谢@janek1,但这个解决方案对我不起作用。你还有别的想法吗?你说你复制文件。。。同时复制供应商目录。实际上我认为您不需要提前清除缓存和转储资产。即使服务器处于脱机状态,您也应该能够在服务器上运行这些命令。我安装了composer并复制了所有文件的项目,但当我尝试打开symfony项目时,出现了以下错误“此服务器上找不到请求的URL”您知道如何配置它吗?感谢@Grene提供的解决方案,但它对我不起作用。我更新了composer,然后将项目从笔记本电脑复制到服务器,但仍然无法工作。你还有别的解决办法吗?