PHP:Composer 使用比所用版本旧的 PHP 版本(在共享主机上)
Posted
技术标签:
【中文标题】PHP:Composer 使用比所用版本旧的 PHP 版本(在共享主机上)【英文标题】:PHP: Composer uses PHP version older than the used version (on shared hosting) 【发布时间】:2022-01-12 22:56:44 【问题描述】:我正在尝试从 SSH 终端运行 composer 命令,但我得到了这个
Composer detected issues in your platform: Your Composer dependencies require a php version ">= 7.3.33". You are running 7.1.33.
当我运行 php -v
时,我得到 PHP 7.3.33 (cli)
,当我在 Laravel(不是终端)中运行 phpinfo()
时,我得到 PHP Version 7.3.33
在 composer.json 中:
"require":
"php": "^7.3.33",
在 .htaccess 中
<IfModule mime_module>
AddHandler application/x-httpd-ea-php73 .php .php7 .phtml
</IfModule>
为什么会发生这种情况,我该如何解决?
【问题讨论】:
【参考方案1】:请注意,.htaccess
仅影响 Apache 配置。通过 SSH 访问服务器时,该文件被完全忽略/无用。
一些提供商安装多个版本的 PHP,通过键入 php7.3
使其可用,php
是当前默认版本的简单别名。当您的 ssh 会话使用另一个版本时,可能会设置作曲家以使用不同版本的默认值(不确定如何/为什么)。
因为您的php -v
正在报告所需的版本。我建议下载composer.phar
并通过php composer.phar ...
在本地运行它,而不是依赖当前系统范围内安装的composer。
【讨论】:
以上是关于PHP:Composer 使用比所用版本旧的 PHP 版本(在共享主机上)的主要内容,如果未能解决你的问题,请参考以下文章