За последние 24 часа нас посетили 17073 программиста и 1835 роботов. Сейчас ищут 1675 программистов ...

ssh2_exec ответ

Тема в разделе "Прочие вопросы по PHP", создана пользователем Rockman, 17 янв 2012.

  1. Rockman

    Rockman Активный пользователь

    С нами с:
    18 ноя 2010
    Сообщения:
    53
    Симпатии:
    0
    Адрес:
    Россия
    Отправляю команду для запуска приложения, нужно получить ответ, тот который приходит, если выполнять эту же команду в ssh клиенте.
    делаю так:
    Код (Text):
    1. <?php
    2.    $con = ssh2_connect($ip, 22);
    3.    ssh2_auth_password($con, $user, $password);
    4.    $result = ssh2_exec($con, 'cd /home/admin/data/; ./start &');
    5.    stream_set_blocking($result, true);
    6.    $data = "";
    7.    while($o = fgets($result))  $data .= $o;
    8.    fclose($result);
    9.    echo $data;
    10. ?>
    Приложение успешно запускается сразу,а ответ отображается в браузере только в тот момент, когда запущенный процесс завершается.
     
  2. yuri

    yuri Активный пользователь

    С нами с:
    16 янв 2012
    Сообщения:
    288
    Симпатии:
    2
  3. Rockman

    Rockman Активный пользователь

    С нами с:
    18 ноя 2010
    Сообщения:
    53
    Симпатии:
    0
    Адрес:
    Россия
    Все из предложенных вариантов приводили к тому результату, что я описал. Нужный ответ приходит, но после того как убиваешь этот запущенный процесс.