首页 > 解决方案 > 如何从 PHP exec 运行 Plesk CLI 命令

问题描述

我正在尝试从 php 脚本在 plesk 服务器上创建域。

我有这个...

exec('plesk bin domain -c booking.test.com -webspace-name dev-us2.test.com -dns false -mail_service false -www-root httpdocs', $response);
var_dump($response);

哪个输出这个....

array(1) { [0]=> string(24) "Error: must run as root." }

我也尝试过在前面使用“sudo”运行它 - 但我只是返回一个空白数组。

有没有办法让我安全地运行它,或者至少能够查看错误日志来找出我哪里出错了?

编辑:

我现在尝试将其添加到 shell 脚本中......

#!/usr/bin/env bash

error() {
  echo "$@" 1>&2
}

fail() {
  error "$@"
  exit 1
}

URLBASE=${1?Error: no url given}
SERVER=${2?Error: no server given}

plesk bin domain -c $URLBASE -webspace-name $SERVER -dns false -mail_service false -www-root httpdocs 

如果我通过 SSH 以 root 身份运行脚本,它可以工作,但如果我尝试从 PHP 文件执行它,它会出现相同的“必须以 root 身份运行”错误。

我尝试将用户和脚本添加到 sudoer 我尝试将用户添加到 sudoer.d/ 目录我尝试更改脚本的所有者 - 但仍然没有。

标签: phplinuxexecplesk

解决方案


推荐阅读