По какой-то причине, когда я запускаю это, он отправляет файл на удаленный сервер (YAY), но ему не удается запустить сценарий (BOO) в фоновом режиме, поскольку время ожидания соединения истекает до его завершения ... и я скореене ждите, просто дайте ему запуститься на заднем плане ... кто-нибудь имел успех с phpseclib и отправкой удаленного скрипта на сервер и его выполнением?
Заранее спасибо!
$sftp = new Net_SFTP($vps_ip);
$attempts = 0;
while (true) {
if (10 == $attempts) {
echo "10 attempts, check user/password/ip";
return false;
}elseif(!$sftp->login($user, $vps_password)) {
echo "unable to connect to ".$server."." . PHP_EOL;
$attempts += 1;
echo "Attempts: ".$attempts. PHP_EOL;
continue;
}else{
break;
}
}
echo $sftp->pwd(). PHP_EOL;
$sftp->setTimeout(30);
$remote_file_location = $sftp->pwd().'/'.$new_script_file_name;
$sftp->put($remote_file_location, $new_script_file_location, NET_SFTP_LOCAL_FILE);
$command = "sudo bash ".$remote_file_location." ~/Tmp/".$file.".txt 2>&1 & sleep 5; head ~/Tmp/".$file.".txt";
echo $sftp->exec($command);
$sftp->disconnect();