【问题标题】:Use Composer without ssh access to server在没有 ssh 访问服务器的情况下使用 Composer
【发布时间】:2013-04-12 11:16:00
【问题描述】:

是否可以在无法使用 ssh 仅 ftp 访问的廉价网络空间上运行 composer

运行system('php composer.phar install'); 理论上应该可行 - 这是推荐的方法吗?

【问题讨论】:

  • 如果您可以 FTP 上传..您可以在本地主机中编写脚本,然后将其上传到您的服务器.. ++ 在某些脚本中,composer 会获得许多不需要的测试/文档文件要运行的脚本,将它们放在您的服务器上并不是很好(如果您的空间有限..)
  • 你可以在本地运行composer,然后再上传包。

标签: php composer-php


【解决方案1】:

我认为最好的方法,正如之前在 cmets 中所建议的,是在能够执行此操作的本地系统上执行 composer 步骤,然后通过 FTP 上传结果。

Composer 具有一些(可能是可选的)软件依赖项,这些依赖项很可能在您的网络空间中不可用。例如,它需要 Git 和 SVN 客户端软件,以防您要安装的项目引用此类依赖项。

另一件事是从 Github(或其他任何地方)下载可能会失败。或者触发 API 限制并要求登录。

您真的想收集所有软件并知道它可以工作,而不是希望它可以远程执行。

【讨论】:

  • 我只是为 PHPMailer 做的,它工作得很好,而且没有编辑任何文件!
【解决方案2】:

我已经成功地在我的共享主机上安装了 Composer,只使用了 FTP:

  1. 在共享主机上安装PHPShell

  2. 在 PHPShell 的config.php 中添加用户和别名:

    php = "php -d suhosin.executor.include.whitelist=phar"

  3. 登录 PHPShell 并输入:curl -sS https://getcomposer.org/installer | php

  4. 安装成功后,运行 Composer:php composer.phar

【讨论】:

  • @FewFlyBy 有什么问题?
  • 未找到 PHP。这就是我得到的。此外,您似乎有 5 个部分而不是 4 个?或者这是创建一个登录? php = "php -d suhosin.executor.include.whitelist=phar" 如果是这样,实际的登录凭据是什么?
  • @GaryCarlyleCook 你确定你已经安装了 PHP 并且在 PATH 中可用吗?阅读 PHPShell 的 INSTALL 文件,了解如何在您的主机上安装它。
  • 这将在网络主机没有禁用 shell_exec 的情况下工作。大多数共享虚拟主机服务都有,因此这不适用于大多数共享虚拟主机。
猜你喜欢
  • 2016-08-18
  • 2021-05-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-05
  • 1970-01-01
  • 1970-01-01
  • 2015-12-30
相关资源
最近更新 更多