php - php版本与作曲家不匹配
问题描述
我想在共享托管服务器中安装 php 依赖项,但 composer 说我的 php 版本5.6.40
(对于我的依赖项来说太旧了),这是真的,所以我将 php 版本从 cpanel 设置为7.3.23
使用名为“MultiPHP manager”的东西。好吧,直到我重试运行composer install
,composer 一直说我的 php 版本是5.6.40
.
然后我检查了phpinfo()
一个虚拟页面,它说我的版本是7.3.23
. 我也跑php -v
了,输出说我的版本是7.3.23
.
我试过
- 重新加载
httpd
- 运行
composer update
,composer self-update
但它说allow_url_fopen
已禁用,但我使用名为“MultiPHP INI 编辑器”的 cpanel 工具启用了它,并phpinfo()
说已启用。
有人可以告诉我我是否做错了什么?或者作曲家怎么不能使用更新的php?
解决方案
您的 cli php 版本(您正在使用的composer install
那个)和您的 apache 在您的服务器中运行的 php 版本(您在phpinfo()
页面中看到的那个)可能不匹配。
尝试在控制台中运行它:
$ php -v
这将输出您在运行时实际使用的版本composer install
要在您的服务器上运行相同的版本,您可能需要在您的机器上找到 PHP 7 二进制文件(也许/usr/bin/php7.3
,您可以尝试执行 a $ whereis php
),然后:
/usr/bin/php7.3 /usr/local/bin/composer install
这是假设您的作曲家二进制文件在 下/user/local/bin/composer
,根据需要进行修改。
推荐阅读
- java - 为什么 java.sql.ResultSet 的“getFloat(column)”方法不返回任何内容,而其他方法则返回?
- flutter - Flutter - 如何更新用于构建 ListView 的 Future/List 的状态(或值?)(通过 FutureBuilder)
- flutter - 基于身份验证状态的 Flutter Navigation
- python - 不保存某些字段的数据
- regex - 正则表达式 - {} 不是 {{
- operating-system - “trap-and-emulate”技术在 2 类管理程序中是如何工作的?
- python - ipaddress.IPv4Network 遍历 1 个主机部分
- java - 从 Eclipse 导出的可执行 jar 文件
- c++ - 使用 C++11 时扩展命名空间 std 以实现 make_unique
- reactjs - 为什么我的环境变量使用包裹返回未定义并做出反应