Вызовите асинхронный PHP-скрипт на Linux-сервере. - PullRequest
0 голосов
/ 10 декабря 2018

Я пытаюсь выполнить сценарий .php с функцией shell_exec() на общем веб-сервере Linux 1 & 1 (дистрибутив Debian GNU / Linux 8).

    private function callAsyncSkript(){
    // Asynchron Zipping over executing a Script in a new process.
    if (substr(php_uname(), 0, 7) == "Windows"){
        $cmd = "start /B php .\src\Core\Services\AsynchronZip.php fileids=".$this->idQuery . " fulllink=".$this->uri;
        pclose(popen($cmd, "r"));
    }
    else {

        $cmd = "/usr/bin/php7.2-cli ".getcwd()."/src/Core/Services/AsynchronZip.php fileids=".$this->idQuery . " fulllink=".$this->uri;
        shell_exec("/usr/bin/nohup ".$cmd." >/dev/null 2>&1 &"." | at now");
        //shell_exec("/usr/bin/nohup ".$cmd." >/dev/null 2>&1 &");
    }
}

Файл "/ usr / bin / nohup"«дополнение не поможет выполнить скрипт асинхронно, если я использую« | сейчас », скрипт не будет выполнен.Есть ли какие-то особые настройки, которые я должен установить, или есть другие опции для асинхронного выполнения по командной строке?

Я обнаружил, что единственная доступная мне оболочка - это rssh.Возможно ли, что она является ошибкой.

...