You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Putty通过SSH安装Composer遇PHP参数错误,求解决方法

解决PHP 4.4.9下安装Composer时php -r命令报错的问题

问题描述

通过Putty按照Composer官方指引安装时,执行第一条命令:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

出现错误提示:

Error in argument 1, char 2: option not found r

当前使用的PHP版本为:

PHP 4.4.9 (cgi-fcgi) (built: Jul  7 2021 07:43:18)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies

报错原因

  1. PHP版本过低导致参数不支持:-r参数是从PHP 5.1.0才开始引入的CLI参数,PHP 4.4.9完全不支持该参数,这是直接报错的原因。
  2. Composer本身不兼容PHP 4:Composer的运行要求PHP 5.3.2及以上版本,PHP 4.4.9远远达不到最低要求,即使绕过当前报错,后续安装也会彻底失败。

解决方法

1. 升级PHP到符合要求的版本(唯一可行方案)

  • 将PHP升级至5.3.2或更高版本(推荐升级到PHP 7.4及以上,PHP 5.x系列已停止安全维护)
  • 升级完成后,重新执行官方提供的四条安装命令即可正常完成Composer安装:
    php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
    php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
    php composer-setup.php
    php -r "unlink('composer-setup.php');"
    

2. 临时绕过-r参数报错(仅作参考,无法完成Composer安装)

如果暂时无法升级PHP,可手动获取安装脚本,但无法完成后续安装:

  • 在本地浏览器打开Composer安装脚本地址,将文件保存为composer-setup.php
  • 通过Putty的SFTP功能将该文件上传到服务器的目标目录
  • 注意:PHP 4.4.9不支持hash_file函数,无法完成安装脚本校验;且执行php composer-setup.php时会因PHP版本过低直接失败

内容的提问来源于stack exchange,提问作者Michael Mathon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 13:50:46