【问题标题】:Cannot download composer - 1and1 with ssh access to server无法通过 ssh 访问服务器下载 composer - 1and1
【发布时间】:2023-03-05 11:48:01
【问题描述】:

我可以通过 SSH 访问我的 1and1 服务器。我正在尝试下载作曲家。

遵循http://getcomposer.org/download/的指示

尝试 1:

user:~ > curl -sS https://getcomposer.org/installer | php
X-Powered-By: PHP/4.4.9
Content-type: text/html

<br />
<b>Parse error</b>:  syntax error, unexpected '{' in <b>-</b> on line <b>316</b><br />

尝试 2:

php -r "eval('?>'.file_get_contents('https://getcomposer.org/installer'));"
Error in argument 1, char 2: option not found r
Usage: php [-q] [-h] [-s] [-v] [-i] [-f <file>] 
       php <file> [args...]
  -a               Run interactively
  -b <address:port>|<port> Bind Path for external FASTCGI Server mode
  -C               Do not chdir to the script's directory
  -c <path>|<file> Look for php.ini file in this directory
  -n               No php.ini file will be used
  -d foo[=bar]     Define INI entry foo with value 'bar'
  -e               Generate extended information for debugger/profiler
  -f <file>        Parse <file>.  Implies `-q'
  -h               This help
  -i               PHP information
  -l               Syntax check only (lint)
  -m               Show compiled in modules
  -q               Quiet-mode.  Suppress HTTP Header output.
  -s               Display colour syntax highlighted source.
  -v               Version number
  -w               Display source with stripped comments and whitespace.
  -z <file>        Load Zend extension <file>.

我做错了什么吗?

我知道它说我正在运行 php 4.4.9,但是如果我运行 phpinfo(),它会说 PHP Version 5.4.21 正在运行。对这里发生的事情有什么建议吗?

phpinfo()

php -v

【问题讨论】:

  • 你运行过最近的 PHP 吗?
  • 这很奇怪...如果我运行 phpinfo,我会得到PHP Version 5.4.21
  • php -v 带给你什么?
  • PHP 5.4.21 (cgi-fcgi)(构建时间:2013 年 10 月 18 日 08:45:55)版权所有 (c) 1997-2013 PHP Group Zend Engine v2.4.0,版权所有 (c) 1998 -2013 Zend 技术
  • 我想知道X-Powered-By: PHP/4.4.9 是从哪里来的。因为当我检查 getcomposer.org/installer 的标题时,它不存在..

标签: php composer-php


【解决方案1】:

目前 1&1 提供了一堆不同别名的 PHP 版本。

但是,设置要使用的默认 PHP 版本的最简单方法是从您的 1&1 仪表板 PHP 设置中单独设置每个域。它位于主机下,然后是 PHP 设置。 [1&1 PHP Settings (United States site)]

请注意,1and1 现在会定期更新 PHP 版本,而且 CLI 版本可能与渲染您网站的用户不同。

原答案。久违了,推荐使用最新的7.x。
实际上所有1and1 linux共享主机上都预装了4个版本的php。

命令:

  • php:4.4 版(您实际与 composer 一起使用的版本。)
  • php5:版本 5.2
  • php5.5:版本 5.5
  • php6:版本 5.4

您必须使用 php5.5 调用 composer,它才可以工作。

【讨论】:

  • 很好的答案。请注意,虽然我运行的是 PHP 5.5.25,但对我有用的是 php5
  • 帮我省了很多麻烦!
【解决方案2】:

你应该使用正确版本的 PHP curl -sS https://getcomposer.org/installer | php5.5

【讨论】:

    【解决方案3】:

    在 1and1 上,您的虚拟服务器的 PHP 版本似乎在您更新之前被冻结。仪表板上有一个“全球 PHP 版本”页面。我刚刚找到它并将我的从 4 左右提升到 5.5。

    【讨论】:

      【解决方案4】:

      您获得不同 php 版本的原因是因为 1and1 为客户端和 Web 安装了不同的 php 版本。

      因此,如果您更改设置(在 1and1 控制面板中)以使用 php5.4,当您运行 phpinfo() 命令时,它会反映这一点。

      但是,命令行版本仍会反映 1and1 的默认 php 版本,即 4.4.9(截至今日)。

      所以,强制为您的作曲家安装 php5 版本,但也将全局版本更改为 5.4,您会没事的。

      这是我这样做时发生的事情。

      ~/demo > curl -sS https://getcomposer.org/installer | php6
      X-Powered-By: PHP/5.4.28  
      Content-type: text/html
      
      #!/usr/bin/env php
      All settings correct for using Composer
      Downloading...
      
      Composer successfully installed to: /homepages/19/[my1and1info]/htdocs/demo/composer.phar
      Use it: php composer.phar
      (uiserver):[my1and1info]:~/demo> 
      

      【讨论】:

        【解决方案5】:

        如果该服务器是您的生产服务器,您可能不应该使用它来完成您的应用程序,而是使用您的本地开发机器下载所有内容,然后上传整个目录。

        根据我在您的外壳上看到的情况,您使用的是古老的 PHP 版本。它是用作命令行的 PHP 4.4 版本,这显然不适用于 composer。要么你在那台机器上搜索 5.3 版本的 PHP(我想知道它是否可能被称为 php53 或其他东西),然后希望安装所有必要的扩展,很可能包括“GIT”命令行工具,也可能“ SVN”,或者该搜索不会真正帮助您,因为您仍然缺乏获得成功 Composer 体验所需的工具。

        Composer 是一个开发依赖管理器。它可能不是为了维护生产服务器的代码库。

        【讨论】:

        • 感谢您提供有用的信息。 Composer 是一个开发依赖管理器,但是我在开发中使用composer updatecomposer install in production。我从.gitignore 中删除了composer.lock。这样,当我推送到 bitbucket/github,然后拉入生产环境时,我运行 composer install 以根据我的 composer.lock 文件下载并安装包依赖项。
        • 我已经多年没有使用 FTP 进行部署了。我总是使用 git & composer。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-10-19
        • 1970-01-01
        • 2020-12-21
        • 1970-01-01
        • 2014-07-20
        相关资源
        最近更新 更多