我正在尝试建立一个php / jquery面板来启动和停止shoutcast dnas和Shoutcast Transcoder。
到目前为止,我现在一切正常,但是我遇到了问题。
如果我从php启动shoutcast dnas,然后再启动shoutcast转码器,则dnas进程退出。
在我的PHP脚本中,我使用shell_exec,并且我做了两个不同的函数来调用它。

}elseif($this->cfg->shellset == 'shellexec'){
    shell_exec($this->cfg->dir_to_cpanel . "files/linux/sc_trans daemon " . $this->cfg->dir_to_cpanel . $filename . " &> /dev/null &");
    $pid = shell_exec("ps -ef | awk '/[$radioport]_sc_trans.conf/{print $2}'");
}


该脚本正在运行,但似乎有些原因使其退出。
我在没有ssh访问的plesk 12面板上在托管服务器上运行。

是否有人有相同的问题或有一个想法来解决此问题,让php在后台运行单独的进程。我不知道此问题是由plesk或其他原因引起的,但我找不到在Stackoverflow上多次搜索此问题的解决方案,但未找到解决方案。

我希望有人可以帮助我...

最佳答案

我对脚本进行了更改,并重写了一些代码并使用ssh访问。
我已经为此使用phpseclib。

现在的代码

$pid = $ssh->exec($this->cfg->dir_to_cpanel.'files/linux/sc_trans daemon '.$filename.' </dev/null 2>/dev/null >/dev/null & echo $!');


这是一种魅力

09-25 20:29