За последние 24 часа нас посетили 30823 программиста и 1440 роботов. Сейчас ищут 890 программистов ...

Запустить скрипт и сказать браузеру гуд бай!

Тема в разделе "Прочие вопросы по PHP", создана пользователем Diem, 16 окт 2009.

  1. Diem

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

    С нами с:
    16 окт 2009
    Сообщения:
    29
    Симпатии:
    0
    Адрес:
    Харьков
    Нужно вызовом php скрипта запустить bash скрипт, но не дожидаясь его завершения отсоединится от браузера.
    php + fcgi.

    Спасибо, а вообще если такого варианта нет, то подскажите как создать дочерний процесс так, чтобы сразу при завершении родительского - он продолжал жить.
     
  2. Simpliest

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

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
  3. Diem

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

    С нами с:
    16 окт 2009
    Сообщения:
    29
    Симпатии:
    0
    Адрес:
    Харьков
    а разве pcntl работет из под php-cgi ?
     
  4. Simpliest

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

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Ну если не будет работать, то скажите своей идее "гуд бай"
     
  5. Diem

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

    С нами с:
    16 окт 2009
    Сообщения:
    29
    Симпатии:
    0
    Адрес:
    Харьков
    Ну для тебя может и гудбай, а вообще просто придётся тоже самое проделывать, но средствами bash.
     
  6. Diem

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

    С нами с:
    16 окт 2009
    Сообщения:
    29
    Симпатии:
    0
    Адрес:
    Харьков
    а то что я морознул, что не работает в cgi, то я дал конечно. Всё работает, но мне рекомпилить впадлу.
     
  7. Diem

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

    С нами с:
    16 окт 2009
    Сообщения:
    29
    Симпатии:
    0
    Адрес:
    Харьков
    Проблему решил.
    Кому будет интересно:

    Что бы запустить bash скрипт в бэкграунде под средством exec(), и при этом не дожидаясь его завершения, продолжить выполнение php скрипта:
    Недостаточно в конце указать &
    Нужно обязательно перенаправить вывод.
    пример exec('./script.sh > /dev/null &');
     
  8. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    PHP:
    1. Header('Connection: close');