宝塔51特惠活动,企业版1099元/年,送SSL证书,最高立减2万元!查看活动
当前位置:论坛首页 > Linux面板 > 求助

【已完成】程序内无法执行 PHP 命令,提示 php: command not

发表在 Linux面板2023-6-28 15:10 [复制链接] 16 6423

本帖最后由 堡塔运维小林 于 2023-7-1 16:11 编辑

为了能快速了解并处理您的问题,请提供以下基础信息:
面板、插件版本:

面板 8.0.0

PHP 8.1 编译安装

系统版本:

腾讯云轻量服务器
Ubuntu 22.04 LTS

问题描述:

终端里可以执行 php 命令,但是在程序里无法执行,报错 php: command not found

全新安装,没有做过任何额外配置。

在程序内,比如使用开源框架的 symfony/process 和 symfony/console 执行 php -v 或者是 composer -V

相关截图(日志、错误):
  1. root@VM-16-13-ubuntu:# php -v
  2. PHP 8.1.17 (cli) (built: Jun 24 2023 17:31:49) (NTS)
  3. Copyright (c) The PHP Group
  4. Zend Engine v4.1.17, Copyright (c) Zend Technologies

  5. root@VM-16-13-ubuntu:# echo $PATH
  6. /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

  7. root@VM-16-13-ubuntu:# which php
  8. /usr/bin/php
复制代码
程序日志

  1. sh: line 1: /usr/bin/php: Permission denied
  2. sh: line 1: exec: /usr/bin/php: cannot execute: Permission denied
复制代码
WX20230628-142030@2x.png


根据 ChatGPT 提示,执行了新安装解决了
  1. sudo apt install php8.1-cli
复制代码


但是问题是,php 变量环境变了
  1. root@VM-16-13-ubuntu:~#  ls -l /usr/bin/php
  2. lrwxrwxrwx 1 root root 21 Jun 28 14:55 /usr/bin/php -> /etc/alternatives/php
复制代码

使用道具 举报 只看该作者 回复
发表于 2023-6-28 15:58:01 | 显示全部楼层
您好,通过您上面反馈的信息可以看到,在执行php命令的时候提示权限被拒绝,请您使用root用户的权限去执行看看是否能成功运行,您安装的这个php8.1-cli这个是php客户端的一个命令,而且是覆盖了之前面板上的php,您可以删除掉这个php8.1-cli再去使用面板的php
使用道具 举报 回复 支持 反对
发表于 2023-6-28 16:37:13 | 显示全部楼层
堡塔运维小林 发表于 2023-6-28 15:58
您好,通过您上面反馈的信息可以看到,在执行php命令的时候提示权限被拒绝,请您使用root用户的权限去执行 ...

我花了半天时间收集了这么多信息,能不能认真的看完啊。

你提到的问题,我上面都已经给你贴出来了。

宝塔安装的 php 环境,www 用户无权执行 php 命令。

单独安装 php-cli 之后,权限就有了。

root 没问题。
使用道具 举报 回复 支持 反对
发表于 2023-6-29 09:47:04 | 显示全部楼层
Fresns 发表于 2023-6-28 16:37
我花了半天时间收集了这么多信息,能不能认真的看完啊。

你提到的问题,我上面都已经给你贴出来了。

您好,您不安装php-cli之前,使用root用户能执行php命令,使用www用户不能执行php,显示是权限拒绝,您其它机器的www用户能使用php命令吗?针对您说的php-cli安装之后,www用户就能执行php命令,这个是因为这个php-cli并不面板上安装的,是使用命令安装的,所以是没有权限的限制的,另外您的程序是用哪个用户去运行的呢?
使用道具 举报 回复 支持 反对
发表于 2023-6-29 09:56:23 | 显示全部楼层
堡塔运维小林 发表于 2023-6-29 09:47
您好,您不安装php-cli之前,使用root用户能执行php命令,使用www用户不能执行php,显示是权限拒绝,您其 ...

我四台机器,都是纯净环境安装的宝塔,只有这一台腾讯云轻量服务器不行,其他机器没有问题。

所有机器使用的是默认配置,没有额外修改,网站运行用户是 www
使用道具 举报 回复 支持 反对
发表于 2023-6-29 09:57:34 | 显示全部楼层
Fresns 发表于 2023-6-29 09:56
我四台机器,都是纯净环境安装的宝塔,只有这一台腾讯云轻量服务器不行,其他机器没有问题。

所有机器使 ...

您好,私信我您的todesk或者向日葵,私信后这里回复一下
使用道具 举报 回复 支持 反对
发表于 2023-6-29 10:10:55 | 显示全部楼层
堡塔运维小林 发表于 2023-6-29 09:57
您好,私信我您的todesk或者向日葵,私信后这里回复一下

直接发你面板的登录信息了,已私信
使用道具 举报 回复 支持 反对
发表于 2023-6-29 10:14:47 | 显示全部楼层
堡塔运维小林 发表于 2023-6-29 09:57
您好,私信我您的todesk或者向日葵,私信后这里回复一下

找到问题和解决办法之后,希望公布出来,因为我有一个群,里面很多人有这个问题,都需要解决办法。
使用道具 举报 回复 支持 反对
发表于 2023-6-29 10:15:57 | 显示全部楼层
Fresns 发表于 2023-6-29 10:14
找到问题和解决办法之后,希望公布出来,因为我有一个群,里面很多人有这个问题,都需要解决办法。 ...

您好,发我todesk或者向日葵,直接发我面板不清楚您的程序中具体的问题
使用道具 举报 回复 支持 反对
发表于 2023-6-29 11:37:42 | 显示全部楼层
堡塔运维小林 发表于 2023-6-29 10:15
您好,发我todesk或者向日葵,直接发我面板不清楚您的程序中具体的问题

我电脑里没有安装任何远程控制的软件。

你直接在终端里执行 sudo -u www php -v
如果能获得 php 版本信息,那程序里也能执行。

以下是程序里的报错信息
WX20230629-113724@2x.png

使用道具 举报 回复 支持 反对
发表于 2023-6-29 13:59:13 | 显示全部楼层
我的宝塔www用户也是提示 php: command not found,终端用命令行root执行php -v正常显示版本。php所有环境都是通过面板安装,请问怎么解决
使用道具 举报 回复 支持 反对
发表于 2023-6-29 16:22:02 | 显示全部楼层
Fresns 发表于 2023-6-29 11:37
我电脑里没有安装任何远程控制的软件。

你直接在终端里执行 sudo -u www php -v

您好,使用sudo -u www -g root php -v 这个命令可以获取php版本的信息,但是使用sudo -u www php -v 命令依旧无法获取,我用其它的一个用户也无法去获取php信息,怀疑是系统内部的问题,建议您重装一下操作系统,或者联系服务运营商去排查一下,是不是对用户做了限制
使用道具 举报 回复 支持 反对
发表于 2023-6-29 17:01:40 | 显示全部楼层
堡塔运维小林 发表于 2023-6-29 16:22
您好,使用sudo -u www -g root php -v 这个命令可以获取php版本的信息,但是使用sudo -u www php -v 命 ...

我这系统干净的直接安装宝塔后也不行啊,确定不是宝塔系统安装的php出问题?我记得一年前的旧版宝塔就是正常的,最近的这些版本都这样了
使用道具 举报 回复 支持 反对
发表于 2023-6-29 17:21:26 | 显示全部楼层
cjicwc 发表于 2023-6-29 17:01
我这系统干净的直接安装宝塔后也不行啊,确定不是宝塔系统安装的php出问题?我记得一年前的旧版宝塔就是 ...

您好,面板上并没有对其它的普通用户做这个限制,如果是宝塔安装的php出现问题,那你其它的机器上都不能使用www用户执行php了
使用道具 举报 回复 支持 反对
发表于 2023-6-30 14:11:38 | 显示全部楼层
堡塔运维小林 发表于 2023-6-29 16:22
您好,使用sudo -u www -g root php -v 这个命令可以获取php版本的信息,但是使用sudo -u www php -v 命 ...

已经和腾讯的技术支持又测试了两台机器,排除系统问题。

我自己刚刚又试了一次极速安装 PHP,能够使用 PHP 命令,然后又试了编译安装,也能使用。

我已经没有精力再测试是不是「独立运行环境(py3.7)」这个版本的问题了。问题就此结束了,我自己服务器没问题了,不再反馈了。


另外,测试过程中偶尔会遇到极速安装 MySQL 之后,立马又提示有新升级,升级后不能启用 MySQL 了。
使用道具 举报 回复 支持 反对
12下一页
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急运维服务

响应时间:3分钟

问题处理方式:宝塔专家1对1服务

工作时间:工作日:9:00 - 18:30

宝塔专业团队为您解决服务器疑难问题

点击联系技术免费分析
快速回复 返回顶部 返回列表